Tema destacado:
Autor
|
Tema: Duda con variables (Leído 656 veces)
|
luistrea
Desconectado
Mensajes: 18
|
Me estoi leyendo una guia y aparece un ejercicio de variables, introduzco un codigo y se me cierra en seguida porque es si he puesto el "system("PAUSE");" esto no tendria que pausar.
#include <stdio.h> #include <stdlib.h>
main() { int primerNumero = 1212; int segundoNumero = 1213; int suma = primerNumero + segundoNumero; prinft("Su suma es %d", suma); system("PAUSE"); return 0; }
|
|
|
|
|
En línea
|
Creo en un solo lenguaje de programación, "C" Todopoderoso creador de Unix y de Windows de todo lo visible y lo abstracto.
|
|
|
Ferno
Desconectado
Mensajes: 282
|
Usa las etiquetas GeSHi para postear código!! Por otra parte, no estás programando bien. Si tienes un return 0; al final del main, quiere decir que dicha función retorna un entero, y no lo veo en la definición. Lo mismo con sus respectivos parámetros. La definición estándar del main es: int main (int argc, char* argv[]) Además, en la línea donde intentas imprimir, escribes prinft, cuando en realidad, es printf. Este código no tendría que compilar siquiera.
|
|
|
|
|
En línea
|
|
|
|
luistrea
Desconectado
Mensajes: 18
|
Ok grax ya corregi y me funciona, pero no me critiques tanto que soi un nooob  Oye tengo unas dudas: Lo del main es obligado ponerlo asi? Lo de return me viene por defecto me aconsejas quitarlo?
|
|
|
|
|
En línea
|
Creo en un solo lenguaje de programación, "C" Todopoderoso creador de Unix y de Windows de todo lo visible y lo abstracto.
|
|
|
Caster
Desconectado
Mensajes: 405
Divide y vencerás
|
El return 0 lo que hace es cerrar el programa, dejalo, está bien así.
|
|
|
|
|
En línea
|
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe, he aquí el verdadero saber." (Confucio)
|
|
|
Ferno
Desconectado
Mensajes: 282
|
Pero si no te lo critiqué che! Son sugerencias y te estoy ayudando. Si te molesta que te muestren los errores que uno comete, nunca vas a aprender...
|
|
|
|
|
En línea
|
|
|
|
Caster
Desconectado
Mensajes: 405
Divide y vencerás
|
Haya paz... EDITO: Te dejo este código, hace lo mismo que el que has escrito tu, pero te lo enseño para que veas como ahorrarte lineas y que te sea más fácil. #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int primerNumero = 1212, segundoNumero = 1213, suma = primerNumero + segundoNumero; printf("Su numero es %d\n", suma); system("PAUSE"); return 0; } Saludos
|
|
|
|
« Última modificación: 27 Diciembre 2011, 22:06 por |Demon| »
|
En línea
|
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe, he aquí el verdadero saber." (Confucio)
|
|
|
Ferno
Desconectado
Mensajes: 282
|
Lo del main es obligado ponerlo asi?
Depende pero en práctica no. Lo aconsejable es ponerlo como te lo comenté, ya que es la declaración estándar y jamás tendrás problemas de esa forma. Hay gente que pone por ejemplo: int main (void) Pero yo prefiero lo más cercano al estándar posible en estos casos. PD: Vengo en son de paz, que no se tome como que levanté el tono la última vez, nada que ver!
|
|
|
|
|
En línea
|
|
|
|
Caster
Desconectado
Mensajes: 405
Divide y vencerás
|
Declara el main() como te dijo Ferno y como el código que te acabo de dejar yo, es más facil así. Un saludo
|
|
|
|
|
En línea
|
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe, he aquí el verdadero saber." (Confucio)
|
|
|
Sagrini
Desconectado
Mensajes: 104
Visit las Vegas ;)
|
Ya que estamos "para aprender", voy a criticar yo también jajaja (@Ferno es brooooma...) Ahora, os corrijgo a todos: #include <stdio.h> int main () { int num1 = 1212, num2 = 1213; printf ("%d+%d=%d\n", num1, num2, num1+num2); return 0; } 1. No tenéis por que incluir "stdlib.h" cuando no se está usando en el programa. 2. "main ()", "void main ()", "int main (void)" no son correctos (el último sería aceptable, pero no suele usarse). 3. "int main (int argc, char *argv [])". Es lo más correcto, pero lo que hay entre paréntesis puede suprimirse si no es usado en el programa. 4. Nombres de variables muy largos entorpecen la programación, y no es agradable tratar con nombres muy largos. 5. No es necesario declarar una variable para almacenar un valor que sólo será usado una vez. Es ridículo. 6. "return" a secas es correcto sólo cuando la función el la que está se ha declarado con un "void", lo cual no está bien en el caso de "main ()". 7. "system ("PAUSE")" es horrible, nunca debe usarse. En caso de que uséis un entorno de programación gráfico usad "getchar ()"o similares, pero nunca uséis "system ()" si no es estrictamente necesario. Por algo siempre se recomienda programar desde una terminal a no ser que la salida sea gráfica (trabajar desde terminal es muchísimo más cómodo, directo, práctico y rápido). 8. Pedir paz en un foro público es ridículo. Por favor. Si quieren decir tonterías, ¡adelante! 9. Esa ortografía... Sin rencor 
|
|
|
|
« Última modificación: 28 Diciembre 2011, 12:41 por Sagrini »
|
En línea
|
Un saludo. Sagrini
|
|
|
Caster
Desconectado
Mensajes: 405
Divide y vencerás
|
Punto 1: Ok Punto 2: Yo no fui Punto 3: Ok Punto 4: Yo puse esos nombres porque son los que puso él Punto 5: Ok Punto 6: Lo sabía, pero no explicarlo Punto 7: Ya se que llamar al sistema para hacer una pausa es horrible, pero para códigos así de simples vale igual Punto 8: Hijos de **** todos !!!!!
Saludos
|
|
|
|
|
En línea
|
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe, he aquí el verdadero saber." (Confucio)
|
|
|
Unbr0ken
Desconectado
Mensajes: 248
|
(...) Ahora, os corrigo a todos: (...)
@Sagrini: Me causa gracia que critiques la ortografía de otros usuarios, cuando la tuya no es perfecta, pues se escribe "corrijo", no "corrigo". Esto no es foro libre, el tío ha hecho una duda acerca de un tema técnico, no ha pedido que le critiquen la ortografía o que se desvíen del tema, así que... mantengamos el orden y a hacer off-topic en otro lado. Para algo tienen Foro Libre.
|
|
|
|
|
En línea
|
Discutir con desconocidos por internet es un ejercicio de imbéciles; todos acaban siendo quinceañeros arrogantes con cantidades infinitas de tiempo libre. NO resuelvo dudas vía MP, para algo está el foro.
|
|
|
Sagrini
Desconectado
Mensajes: 104
Visit las Vegas ;)
|
Mmm, cierto... como he dicho todos estamos para aprender jajaja Ya he modificado, eso me pasa por las prisas 
|
|
|
|
|
En línea
|
Un saludo. Sagrini
|
|
|
Caster
Desconectado
Mensajes: 405
Divide y vencerás
|
Aclaro: Por si alguien lo ha entendido mal, el responder por puntos lo he hecho para responder bien y ordenadamente sin ánimo de enfadarme con nadie. Saludos
|
|
|
|
|
En línea
|
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe, he aquí el verdadero saber." (Confucio)
|
|
|
luistrea
Desconectado
Mensajes: 18
|
Me podeis explicar lo de "system ("PAUSE")", porque es una tonteria si no lo pongo el programa no se pausa y no lo puedo ver. 
|
|
|
|
|
En línea
|
Creo en un solo lenguaje de programación, "C" Todopoderoso creador de Unix y de Windows de todo lo visible y lo abstracto.
|
|
|
Caster
Desconectado
Mensajes: 405
Divide y vencerás
|
Es una llamada al sistema para hacer una pausa, pero no lo uses, usa getchar();
|
|
|
|
|
En línea
|
"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe, he aquí el verdadero saber." (Confucio)
|
|
|
|
|