Sobre unas dudas de C

Hola tengo una duda sobre un programa de C:
#include <stdio.h>
void leer_linea(char linea[]);
main()
{
char linea[30];
leer_linea(linea);
puts("La linea es\n");
puts(linea);
}
void leer_linea(char linea[30])
{
gets(linea);
return;
}
La duda es la siguiente: ¿Por qué en la función se declara de tipo void, si realmente esta función devuelve el valor de una cadena de caracteres.
También querría saber si puedo compilar todo sin problemas en C teniendo un compilador de c++, tengo el borland C++ 4.5, lo digo porque no me deja ejecutar arrays del tipo "char cadena[]", para que me deje ejecutar tengo que poner algo entre los corchetes.
Muchas gracias por tu ayuda.

1 respuesta

Respuesta
1
Realmente no estas retornando un valor especifico, lo que sucede es que retornas el control de ejecución del programa, al parecer ademas.. en esa declaración al usar siempre la misma variable linea, lo que sucede es que se asocian a nivel de memoria, por eso vez el resultado.
C++ es diferente de Borland C. por eso algunos comando o instrucciones en C son distintas en C++.
Por ejemplo, has probado clrscr() en C++?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas