Mi chiedo se sia possibile utilizzare una funzione come swap() in due diverse strutture per scambiarle? Così, per esempio,Una funzione di scambio da utilizzare con 2 diverse strutture
typedef struct{
char a;
}one;
typedef struct{
int c;
}two;
swap(??,??){
// code to swap 2 elements
}
one arr[8];
arr[1].a='a';
arr[2].a='b';
two brr[8];
brr[1].c = 11;
brr[2].c = 12;
Quindi, in base a questo, è possibile che la funzione di scambio per essere in grado di scambiare gli elementi in struct? E.g è possibile utilizzare: 1. swap (arr [1], arr [2]); 2. swap (brr [1], brr [2]);
Dalla mia comprensione, tale cosa non può essere eseguita poiché il tipo di dati sia per struct (che per il suo elemento) sono diversi. Mi sono chiesto di creare una funzione modulare per un mio progetto in modo che l'aiuto sarebbe molto apprezzato.
Grazie.
è possibile definire macro per questo –
Utilizzando C e, come hai scritto, no. Non è possibile senza scrivere un codice veramente brutto. Tuttavia, potresti voler indagare sui sindacati. –
macro, o cambiarlo in 'swap (foo, bar, size)' – user3528438