Página 1 de 2 12 ÚltimoÚltimo
Resultados 1 al 8 de 10

[C]Dudilla con el return

Esta es una discusión para el tema [C]Dudilla con el return en el foro Programación, bajo la categoría Webmasters y Programadores; Hola foreros!, estoy estudiando el c y para que te muestre un simple mensaje (es decir "parar" el codigo) usamos el system("pause"); o getchar();, pero viendo muchisimos ejemplos en internet ...
Página: 1


  1. #1
    Member

    Fecha de ingreso
    19 oct, 06
    Mensajes
    68
    Hola foreros!, estoy estudiando el c y para que te muestre un simple mensaje (es decir "parar" el codigo) usamos el system("pause"); o getchar();, pero viendo muchisimos ejemplos en internet como por ejemplo algo sencillo:



    Código:
    #include <stdio.h>
    
    
    
    int main()
    
    {
    
     * char nombre[20];
    
     * unsigned int edad=0;
    
    
    
     * printf( "Escriba su nombre: " );
    
     * scanf( "%s", nombre );
    
     * printf( "Escriba su edad: " );
    
     * scanf( "%u", &edad );
    
    
    
     * printf("\nHola %s. Tienes %d anyos.\n", nombre, edad );
    
    
    
     * return 0;
    
    }


    bueno pues mi duda es que no me muestra el mensaje del printf..., se supone que el return 0; hará que termine el programa pero el código en si debería mostrar el mensaje del printf o no?

    otra duda es que he leido algo del fprintf pero no entiendo como funciona

     
     
  2. #2
    Miembro vitalicio

    Fecha de ingreso
    01 may, 05
    Mensajes
    1,934
    pues a mi me compila y ejecuta perfectamente, no se dónde puede estar el problema(como no sea tu compilador)



    si te refieres a que lo ejecutas en windows y se cierra la ventana, en realidads te muestra el mensaje pero se cierra al instante, para evitar que pase eso debes añadir

    Código:
    fflush(stdin);
    
    getchar();
    antes del return 0;

     
     
  3. #3
    Colaborador

    Fecha de ingreso
    27 dic, 07
    Mensajes
    1,211
    si quieres utilizar "return 0", antes de el debe de ir "getch ()"



    y se debe de poner la directiva #include<conio.h> para que el programa pueda identificar el "return 0"

     
     
  4. #4
    Miembro vitalicio

    Fecha de ingreso
    01 may, 05
    Mensajes
    1,934
    no, el return 0; es algo estándar de C, no hay que añadir la librerio de conio.h

     
     
  5. #5
    Miembro vitalicio

    Fecha de ingreso
    07 feb, 05
    Mensajes
    620
    Cita Iniciado por jando' date='Jan 10 2008, 06:36 AM
    si quieres utilizar "return 0", antes de el debe de ir "getch ()"



    y se debe de poner la directiva #include<conio.h> para que el programa pueda identificar el "return 0"

    [snapback]424943[/snapback]
    En serio sabes qué estás diciendo ó qué es lo que el chavo está preguntando?



    No digas cosas sin saber.

     
     
  6. #6
    Super Moderador Avatar de rob1104

    Fecha de ingreso
    07 mar, 05
    Ubicación
    México
    Mensajes
    2,548
    Cita Iniciado por jando' date='Jan 9 2008, 11:36 PM
    si quieres utilizar "return 0", antes de el debe de ir "getch ()"



    y se debe de poner la directiva #include<conio.h> para que el programa pueda identificar el "return 0"

    [snapback]424943[/snapback]
    Complementando a lo de ornitorrinco&#39;s y RadicalEd, rectifico que toda esa informacion es erronea, el return es de lo mas estandar que existe en C, simplemente sirve para retornar un valor de alguna funcion, en el caso del return de la funcion int main() al devolver 0 significa que el programa termino con exito, de hecho en la libreria stdlib.h hay una constante llamada EXIT_SUCCESS que esta igualada a 0, asi como EXIT_FAILURE igualada a 1, que significa que el programa termino de forma no esperada.



    La libreria conio.h es una libreria de borland para implementar cierta estetica y facilidad a la programacion en consola de 16 bits, actualmente esta obsoleta, y mi consejo es que no la usen.



    Saludos

     
     
  7. #7
    Senior Member

    Fecha de ingreso
    11 nov, 07
    Mensajes
    110
    Bueno, te respondo porque parece que aqui se ha creado la polemica jeje .



    Simplemente antes del return 0 pon getch(); y claro incluye la libreria conio.h que es la que sirve para reconocer esa instruccion (creo que aqui fue donde se ha de haber confundido rob1104. .



    Sobre lo del fprintf sirve para mandar una serie de argumentos(pueden ser cadenas numeros etc etc etc) a un stream, por ejemplo a un archivo (tambien llamado fichero depende del pais donde estes jeje), has de cuenta que por ejemplo puedes mandar a escribir "hola mundo" en un archivo txt que despues puedes abrir con el block de notas, sobre esto hay mucha informacion y ejemplos en la red. Cualquie otra duda estamos para ayudar.



    Saludos.

     
     
  8. #8
    Super Moderador Avatar de rob1104

    Fecha de ingreso
    07 mar, 05
    Ubicación
    México
    Mensajes
    2,548
    Cita Iniciado por PC_MAC' date='Feb 8 2008, 04:10 PM
    Simplemente antes del return 0 pon getch(); y claro incluye la libreria conio.h que es la que sirve para reconocer esa instruccion (creo que aqui fue donde se ha de haber confundido rob1104.*

    [snapback]432944[/snapback]
    Para nada me confundi, simplemente, que no le recomiendo que use la funcion getch() porque no forma parte el C estandar, ya que la libreria conio.h

    es de la compañia Borland y era util para programar en modo consola a 16 bits, pero hoy en dia es obsoleta.



    En lugar de getch puede usar:
    Código:
    fflus(stdin); //Limpiar el buffer del teclado
    
    getchar(); //esperar por un caracter


    O simplemente
    Código:
    system("pause");
    , para ello tienes que incluir stdlib.h



    Saludos

     
     
Página 1 de 2 12 ÚltimoÚltimo

Temas similares

  1. Dudilla en Java
    Por Marzzipan en el foro Programación
    Respuestas: 2
    Último mensaje: 12/04/2008, 00:06
  2. Dudilla con un juego
    Por Pavilongo en el foro Juegos
    Respuestas: 1
    Último mensaje: 13/05/2007, 21:52
  3. Dudilla de procesador y ram
    Por Pavilongo en el foro Hardware
    Respuestas: 3
    Último mensaje: 21/11/2006, 18:00
  4. The Return Overnet
    Por horasex en el foro Peer to Peer
    Respuestas: 1
    Último mensaje: 22/06/2005, 03:55
  5. Dudilla sobre el Google
    Por Javi47008 en el foro Off Topic
    Respuestas: 2
    Último mensaje: 02/05/2005, 19:25

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •