Duda sobre C.

Iniciado por Danirs, 14 Julio 2012, 19:26 PM

0 Miembros y 1 Visitante están viendo este tema.

Danirs

Buenas!

Estoy empezando en esto de la programacion en C y tengo varias dudas, queria saber si me las podiais resolver.
Gracias!

A ver estoy intentando compilar y ejecutar este codigo:

Lo 1º las dos llaves "{}" al compilar me da error  :-\ .
Lo 2º otro programa al ejecutar me sale una ventana negra que no da tiempo ni a verla.

A ver si podéis hacer algo gracias.

#include <stdio.h>
#include <srting.h>
int main0
{
    char mensaje[20];
    strcpy (mensaje, "Atapuerca\n");
    printf (mensaje);
    return 0;
}
Qué es la vida un frenesí. Qué es la vida una ilusión, una sombra, una ficción. Que todo en la vida es sueño y los sueños, sueños son.

DickGumshoe

¡Hola!

El primer error que veo es que la librería es string.h, no srting.h.

Después, no es int main0, sino int main() (con paréntesis en vez de con un 0).

También he visto que quieres imprimir el contenido de la variable así: "printf(mensaje)". Así no se puede... Algunas de las formas más comunes son:

printf("%s", mensaje);

puts(mensaje);

Respecto a la "ventana negra que no da tiempo ni a verla", tienes que poner justo antes del return 0;:

getchar();

Lo que hace es esperar a que el usuario pulse una tecla, y así no se cierra la ventana (hasta que no pulses "intro").

¡Ah! Y quizá en algunos programas aunque pongas una vez getchar(); no se te pause. Eso es porque tienes "basura" en el buffer y getchar(); la ha eliminado. En ese caso debes poner dos getchar(), uno para vaciar el buffer del teclado y otro para esperar a que el usuario pulse intro.

Saludos!

Danirs

Jeje pues si que andaba bien...xD y eso que lo he copiado de un libro...pero muchas gracias por responder probare como me has indicado. ;D
Qué es la vida un frenesí. Qué es la vida una ilusión, una sombra, una ficción. Que todo en la vida es sueño y los sueños, sueños son.