elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  uso de llaves para poder declarar variables del mismo nombre
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: uso de llaves para poder declarar variables del mismo nombre  (Leído 2,882 veces)
david_BS

Desconectado Desconectado

Mensajes: 99



Ver Perfil WWW
uso de llaves para poder declarar variables del mismo nombre
« en: 31 Marzo 2012, 17:43 pm »


Esto es algo que muchos iniciados no saben, y es que las llaves de c/c++ son para marcar ámbitos, por ejemplo el ámbito de una función es lo que está dentro de sus llaves.

por ejemplo, si quisiera crear dos FOR que utilicen una misma variable llamada 'i', y quiero declararla dos veces, esto normalmente no se puede hacer dentro de una función, pero si lo hacemos dentro de otro ámbito separado por llaves es posible.

Código:
void Funcion_Dummy()
{
      {
           for(int i=0; i<5; i++)
           {
           }
      }

      /* vuelvo a declarar 'i' pero dentro de otro ámbito de llaves */

      {
            for(int i=0; i<5; i++)
           {
           }
      }
}

parece ser un pequeño truquillo, pero es muy útil si les gusta usar los mismos nombres de variables, por ejemplo en los FOR siempre nos gusta usar i,j,k, etc
La consigna es tener consciencia del ámbito en el que estamos.

Que estén bien ;-D





En línea

jhonatanAsm


Desconectado Desconectado

Mensajes: 376



Ver Perfil WWW
Re: uso de llaves para poder declarar variables del mismo nombre
« Respuesta #1 en: 30 Diciembre 2012, 23:11 pm »

podría ser posible esto:

{
int i=0;
       void as(){
i+=2;
                     }
}

{
String i="asd";
 if(i.equals("asd") )
Sys,....print(":p");

}



En línea

mi primer lenguaje fue ensamblador, tengo 60 años, y no creo que haya sido un error.

- La mayor complejidad de todas es hacer complejo algo que no lo es.

- El inteligente no es aquel que lo sabe todo sino aquel que sabe utilizar lo poco que sabe.
zonahurbana

Desconectado Desconectado

Mensajes: 178

RS, JC.


Ver Perfil WWW
Re: uso de llaves para poder declarar variables del mismo nombre
« Respuesta #2 en: 31 Diciembre 2012, 16:16 pm »

Acabo de escribir, compilar y ejecutar lo siguiente en Code::Blocks.

Código
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main()
  5. {
  6.    for(int i=0; i<3; i++)
  7.        cout<<i<<endl;
  8.    // cout<<i<<endl; No es posible !
  9.    for(int i=0; i<3; i++)
  10.        cout<<i<<endl;
  11.    return 0;
  12. }

En este caso no es necesario usar las llaves para determinar el alcance de las variables i; porque como cada i es declarada y definida dentro de un for, sólo existen dentro de este bucle (sólo para sus iteraciones).
He comentado una línea entre los FOR. Lo que indica que entre ellos no podemos imprimir en pantalla la variable i porque no existe.
Para que las llaves determinen el ámbito de la variable i tendría que declararse antes de cada for, y encerrados entre llaves estarían dicha definición de variable y el bucle.
En línea

Nunca dejar de aprender es importante, más allá del ritmo que se siga ...
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Error al declarar variables. Ayuda
Programación Visual Basic
BenRu 2 1,794 Último mensaje 28 Enero 2006, 20:54 pm
por BenRu
[Duda]Formas para declarar varias variables.
Programación C/C++
777Rubenix777 6 7,450 Último mensaje 16 Octubre 2010, 13:54 pm
por Oblivi0n
¿Declarar variables en PHP?
PHP
dimitrix 2 2,339 Último mensaje 25 Mayo 2012, 04:51 am
por #!drvy
¿Todavía utilizas las llaves para cerrar la puerta de tu casa?
Noticias
Scaramanga 1 2,298 Último mensaje 10 Agosto 2013, 17:44 pm
por Siscu.cab
[Resuelto] problema para declarar variables de un formulario
PHP
gAb1 4 2,236 Último mensaje 12 Noviembre 2015, 20:29 pm
por gAb1
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines