• Domingo 6 de Octubre de 2024, 04:28

Autor Tema:  Hola Tengo Una Pregunta PeuqÑa  (Leído 845 veces)

mauricio2

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
Hola Tengo Una Pregunta PeuqÑa
« en: Miércoles 19 de Mayo de 2004, 16:23 »
0
TENGO UAN FUNCION LA CUAL ME VALIDA PALABRAS COMO PUDIERON DARSE CUANTA EN EL POST ANTERIOR,

CHAR *FUNCION(); //defino

//funcion
CHAR *FUNCION(){

ch=getch();
.........
........
}


DE ESTA FORMA VALIDO
print .........
strcpy(dato.nombre,FUNCION());

por que si paso parametros a una funcion normal no necesito el *

y en esta si por que tengo que apuntar esa funcion.

si no la apunto no me funcioana

O PARA QUE NO ME APUNTE SERIA ASI

char FUNCION(char datoingresado);

print .........
strcpy(dato.nombre,FUNCION(char datoingresado));


ESTOY MUY MAL EN ESO? BUENO LA IDEA DEL FORO ES GUIARNOS ALO QUE NO SABEMOS MUCHO NO ;)

UN SALUDO AMIGOS

nicokiki

  • Miembro MUY activo
  • ***
  • Mensajes: 298
    • Ver Perfil
Re: Hola Tengo Una Pregunta PeuqÑa
« Respuesta #1 en: Miércoles 19 de Mayo de 2004, 17:50 »
0
Hola!!

Porque hay una diferencia:
1.- Pasar parametros por valor = pasar parametros q son utiles a tu funcion, pero no quieres usarlos "cambiados" luego de salir de esa funcion

2.- Pasar parametros por referencia = parametros q quieres modificar dentro de la funcion y q sigan modificados a la salida de la misma.

"Toda función recibe como parámetros copias de los datos especificados (pasaje por valor), nunca datos mismos (pasaje por referencia)."

Esto es correcto para pasar por referencia:

void swap (int *a, int *B);

void main (void)
{
  int a, b;
  swap (&a, &b);
}

/* ********************************* */
/* Función que intercambia los dos enteros */
/* ********************************* */

void swap (int *a, int *B)
{
  int c;

  c = *a;
  *a = *b;
  *b = c;
}



Con respecto a lo de q la FUNCION devuelva char o char* es distinto. La primera devuelve un char y la segunda un puntero a caracteres. No entiendo cual es la pregunta.

nicokiki

  • Miembro MUY activo
  • ***
  • Mensajes: 298
    • Ver Perfil
Re: Hola Tengo Una Pregunta PeuqÑa
« Respuesta #2 en: Miércoles 19 de Mayo de 2004, 17:51 »
0
Salieron caritas donde deberia decir b

Salu2!!!!!!