C/Visual C - Macro sustitución con C

   
Vista:

Macro sustitución con C

Publicado por Juan (3 intervenciones) el 03/04/2014 08:46:16
Buenos días, me gustaría saber si desde C o C++ o Visual C++ se puede hacer esto que antes hacía con Visual FoxPro y creo que es muy bueno

1
2
3
4
5
for nI=1 to 10
     cControl="label"+alltrim(nI)
 
     &cControl..caption="Prueba"
endfor

O se ame refiero a poder utilizar lo que hay dentro de una variable, poder sustituir código, sé que en este ejemplo no haría falta pero es solo un ejemplo de lo que se puede llegar hacer y es muy potente.

Hay alguna manera de poder hacer esto?.

Un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de vangodp

Macro sustitución con C

Publicado por vangodp (10 intervenciones) el 03/04/2014 10:28:33
Deberías dar una descripción de lo que hace ese código. Por que no todos los programadores entienden de fox pro.
el bucle for si se nota lo que es pero:
cControl="label"+alltrim(nI)
&cControl..caption="Prueba"

Estas 2 lineas anteriores no tengo ni idea de lo que hacen. :/

sobre la pregunta te contesto lo que preguntas.

¡Si! Tanto en c como cpp permiten reutilizar una variable para asignar otro valor.

Ejemplo:

Aquí creamos una variable que contiene un numero de tipo entero y le asignamos un valor inicial de 100.
int numero = 100;

ahora le cambio el valor:
numero = 100;
Es eso??
Otro caso:

Creo la variable, pero no asigno el numero aun.
int num1;

En otro punto del programa:
num1 = 334;

Otra cosa son los punterosXDD
Los tipos de datos que puedes guardar en c y cpp son:
char: para letras: a, b, c, d.... toda la tabla asc2 vamos :D
int: para numeros enteros sin coma flotante 1,2,3,4,-30,-4.....
float: numeros de coma flotante -1.0, 0.0, 10.99......
string "Donde están mis tacos papi! " cadena de caracteres XD
en c++ esta el tipo boleano : bool que es true/false (verdadero/falso)
en c no hay bool pero se usa 0 para falso y 1 para verdadero.
bool condicion = true;
Bueno con eso ya puedes declarar guerra a quien sea .^^

Un ejemplo es el array....Con un array, o arreglo como te guste mas XD, o tabla....
una tabla es un rango de variables.Por ejemplo:
Si quiero 10 variables pues creo una tabla...
int tabla[10];
Esto me crea 10 variables de tipo entero en memoria.

ahora mira que podemos hacer con eso:
int tabla[10];
for ( int i = 0; i <= 9; i++ ){
tabla[ i ] = [ i ];
std::cout << tabla[ i ] << std::endl;
}
Lo de arriba me crearia 10 variables tipo int, en ese momento no le asignamos nada. La magia la hace el bucle for
que usa la i del "indice" para ir cambiando entre variables y ir poniendo un numero mayor que el anterior en cada uno de ellas.
en pantalla saliria algo asi:

0
1
2
3
4
5
6
7
8
9

No conozco a visual fox pero si en lo que se refiere a variables en c/c++ es donde lías parda. Tienes acceso total a la memoria.
Eso sin entrar en temas de punteros -_-'
Si quieres cosas sencillitas aprenda c. En c tienes eso junto con funciones estructuras, punteros y muchas cosas mas.
Si quieres complicarte la vida y aprender a programar a un nivel hard, C++ es tu niña bonita jejeje. c++ tiene todo lo de C mas la POO que son clases, objetos, polimorfismo..... Que sea fácil hmmm es otra cosa. Pero si lo hago yo cualquiera puede ><
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Macro sustitución con C

Publicado por Chema (187 intervenciones) el 03/04/2014 22:11:10
Lo que yo creo entender (sustitución de código) no es posible en C, solo es posible en lenguajes interpretados.

Como curiosidad te comento,en variedad de lenguajes interpretados lo que codificas, via macro se reescribe en C.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar