Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: xexio en 1 Julio 2010, 18:07 pm



Título: duda C
Publicado por: xexio en 1 Julio 2010, 18:07 pm
bueno, estoy comenzando a aprender C y me ha surgido una duda

si tengo por ejemplo este codigo
Código:
#include <stdio.h>

int main();

{
  int a;

  printf("Introduce un entero a: ");
  scanf("%d", &a);

  if (a % 2 == 0) { <------- ahí
    printf("el valor de a es par\n");
  }

  return 0;
}

donde pone ahí, vale, ahora ya situados, para que sirve abrir varios { } dentro del mismo programa es decir, no seria lo mismo en ese "mini" programa con un solo { } al principio y al final que en lugar de 2?


Título: Re: duda C
Publicado por: Horricreu en 1 Julio 2010, 18:11 pm
En las instrucciones que sólo tienen una sentencia no es necesario poner las dos llaves. Por ejemplo:

Código
  1. int a = 1;
  2.  
  3. if(a == 1) MessageBox(0, "'a' es igual a 1", 0, 0);

Saludos :P


Título: Re: duda C
Publicado por: cbug en 1 Julio 2010, 19:22 pm
Son llaves no corchetes.


Título: Re: duda C
Publicado por: leogtz en 1 Julio 2010, 19:41 pm
xexio, son bloques de código, la mayoria del tiempo son totalmente necesarios, te sirven para agrupar sentencias.


Título: Re: duda C
Publicado por: @synthesize en 1 Julio 2010, 20:15 pm
Código
  1.  
  2. principal
  3. {
  4.    sentencias
  5.    si
  6.    {
  7.        funcion a()
  8.    }
  9.    si no
  10.    {
  11.        funcion b()
  12.    }
  13.    fin
  14. }
  15.  
  16. funcion a()
  17. {
  18.    sentecias
  19. }
  20.  
  21. funcion b()
  22. {
  23.    bucle()
  24.    {
  25.        sentencias
  26.    }
  27.    sentencias
  28. }
  29.  
  30.  

Un ejemplo...


Título: Re: duda C
Publicado por: xexio en 1 Julio 2010, 23:30 pm
vale, ya lo he pillado, gracias