Viernes 8 de Noviembre de 2024, 16:31
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
Parametros Por Referencia
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Parametros Por Referencia (Leído 886 veces)
biobcn
Nuevo Miembro
Mensajes: 4
Parametros Por Referencia
«
en:
Jueves 8 de Noviembre de 2007, 22:33 »
0
hola!
estoy intentando programar en C, y no consigo pasar una cadena de caracteres por referencia a otra función. Que hago mal?
void referencia(char *ptr)
{
while (*ptr != '\0')
{
*ptr = "a";
}
}
int main(){
char buffer[100] = "hola";
referencia(&buffer);
printf("%s",buffer);
return 0;
}
Gracias de antemano!
Tweet
Eternal Idol
Moderador
Mensajes: 4696
Nacionalidad:
Re: Parametros Por Referencia
«
Respuesta #1 en:
Jueves 8 de Noviembre de 2007, 22:40 »
0
*ptr = "a";
ptr es un puntero a caracter, tenes que usar un caracter ('w' por ejemplo) y no una cadena ("a").
El while no tiene fin ... mejor incrementa ptr.
char buffer[100] = "hola";
No podes declararlo asi, "hola" no ocupa ese tamaño, podes usar:
char buffer[] = "hola";
Y por ultimo
referencia(&buffer);
, saca el operador & y listo.
Nacional y Popular
En mi país la bandera de Eva es inmortal.
Queremos una Argentina socialmente justa, económicamente libre y políticamente soberana.
¡Perón cumple, Evita dignifica!
La mano invisible del mercado me robo la billetera.
biobcn
Nuevo Miembro
Mensajes: 4
Re: Parametros Por Referencia
«
Respuesta #2 en:
Viernes 9 de Noviembre de 2007, 01:02 »
0
Muchas gracias, aunque no me funcionaba ya que, a parte de los errores que me has corregido, estaba ejecutando la funcion en el hijo de un fork(), y supongo que por eso no afectaba la referencia.
Muchas gracias de nuevo, soys de gran ayuda!
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
Parametros Por Referencia