Δημοσιεύτηκε: 03 Φεβ 2012, 21:23
Ηλία, η Python ως interpreted γλώσσα λειτουργεί εξ' ορισμού μέσα σε ελεγχόμενο περιβάλλον: τον interpreter της (η Java στο virtual machine της, κλπ). Η C λειτουργεί απευθείας πάνω στο λειτουργικό της πλατφόρμας, οπότε είναι ελάχιστα (έως μηδενικά) αυτά που μπορείς να θεωρήσεις αυτονόητα... εκτός αν την τρέχεις σε κάποιο πιο high-level περιβάλλον, όπως είναι για παράδειγμα οι C interpreters που κυκλοφορούν.
Για αυτό και σπάνια θα βρεις void συνάρτηση στις στάνταρ συναρτήσεις της γλώσσας... στη συντριπτική τους πλειοψηφία επιστρέφουν κάτι για να δηλώσουν ενδεχόμενη αποτυχία της συνάρτησης.
Btw, ο κώδικας για το swap είναι αυτός...
Για αυτό και σπάνια θα βρεις void συνάρτηση στις στάνταρ συναρτήσεις της γλώσσας... στη συντριπτική τους πλειοψηφία επιστρέφουν κάτι για να δηλώσουν ενδεχόμενη αποτυχία της συνάρτησης.
Btw, ο κώδικας για το swap είναι αυτός...
- Κώδικας: Επιλογή όλων
...
typedef enum { FALSE=0, TRUE } Bool;
typedef unsigned int uint;
typedef struct ArrInt {
uint len;
int *data;
} ArrInt;
...
/* -------------------------------------------------------
* Swap two ArrInt structures
* -------------------------------------------------------
*/
Bool arrint_swap( ArrInt *arrint1, ArrInt *arrint2 )
{
ArrInt temp;
size_t size = sizeof(ArrInt);
if ( !arrint1 || !arrint2 )
return FALSE;
memcpy( &temp, arrint1, size );
memcpy( arrint1, arrint2, size );
memcpy( arrint2, &temp, size );
return TRUE;
}