User avatar by pello in January 1, 1970, 1:00 am
El tipico ejemplo de paso de parametros por referencia en c suele ser un intercambio
entre enteros, al que se podria añadir un ejemplo con cadenas de
texto que ademas son punteros.
/**
* $Id$
* ejemplo de swap en c
* Pello Xabier Altadill Izura
*/

// Declaracion de funcion swap -paso de parametros por referencias-
void swap(int * a, int * b);
// swap de cadenas
void swap_cadenas(char ** a, char ** b);

int main (int argc, char *argv[], char *envp[]) {
    int a = 45, b = 89;
    char *cadena_a = "Joe que curioso";
    char *cadena_b = "Es que no podemos hacer mas";

    // swap de enteros
    printf("Valor de a: %d
Valor de b: %d
",a,b);
    swap(&a,&b);
    printf("Y ahora...
Valor de a: %d
Valor de b: %d
",a,b);
    
    // swap de cadenas con punteros
    printf("Valor de cadena_a: %s
Valor de cadena_b: %sn",cadena_a,cadena_b);
    swap_cadenas(&cadena_a,&cadena_b);
    printf("Y ahora...
Valor de cadena_a: %s
Valor de cadena_b: %s
",cadena_a,cadena_b);

    return 1;
}

// funcion swap de enteros
void swap(int * a, int * b) {
    int tmp;
    tmp = *a;
    *a = *b;
    *b = tmp;
}

// funcion swap de cadenas con punteros
void swap_cadenas(char ** a, char ** b) {
    char * tmp;
    tmp = *a;
    *a = *b;
    *b = tmp;
}
2 comments |  PELMAlink |  1839 reads
0 of 0
make a comment
Comments
#1 POcsYmnbegXRk user avatar says:
www.insurlistonline.com/ insurance auto auctions bkymb www.allinsur.net/ state auto insurance brb www.all-insurers.com/ life insurance 753818
+-0 of 0
in May 12, 2011, 6:13 am
#2 pTEnJtMcCACbAHgysG user avatar says:
www.carinsuronline.com/ car insurance 8-D www.shannondawnphotography.com/life_insurance.html permanent life insurance lxf www.insurersontheweb.net/ free car insurance quotes 700507
+-0 of 0
in May 13, 2011, 3:42 pm
Show all fields