Δημοσιεύτηκε: 03 Φεβ 2012, 21:23
από migf1
Ηλία, η Python ως interpreted γλώσσα λειτουργεί εξ' ορισμού μέσα σε ελεγχόμενο περιβάλλον: τον interpreter της (η Java στο virtual machine της, κλπ). Η C λειτουργεί απευθείας πάνω στο λειτουργικό της πλατφόρμας, οπότε είναι ελάχιστα (έως μηδενικά) αυτά που μπορείς να θεωρήσεις αυτονόητα... εκτός αν την τρέχεις σε κάποιο πιο high-level περιβάλλον, όπως είναι για παράδειγμα οι C interpreters που κυκλοφορούν.

Για αυτό και σπάνια θα βρεις 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;
}