Laburo España: 250.000 ofertas de empleo

Coyote: Modus Vivendi - De regreso a los origenes.

¿El Coyote estara de regreso?

   
  Macros de Asignacion de Valores  

En ocasiones, nos podemos topar con secuencias de asignacion de datos en un registro (o incluso puede ser en varias variables dispersas) muy reiterativos, para lo cual tendriamos que hacer asignaciones como esta:

CTA.cta = m_pDat->m_nivel[0];
CTA.nv2 = m_pDat->m_nivel[1];
CTA.nv3 = m_pDat->m_nivel[2];
CTA.nv4 = m_pDat->m_nivel[3];
CTA.nv5 = m_pDat->m_nivel[4];
CTA.nv6 = m_pDat->m_nivel[5];

Como se Puede observar facilmente, es muy reiterativa, mas si tenemos que hacerlo repetidamente. Para simplificar esto, podemos hacer uso de una macro como esta, actua similar a si fuera una funcion, pero sin tener que hacer las declaraciones engorrosas de una funcion.
// Macro de Asignacion de numero a la cuenta
#define AsignaCta(Cta, Nv2, Nv3, Nv4, Nv5, Nv6)
           CTA.cta = Cta,
           CTA.nv2 = Nv2,
           CTA.nv3 = Nv3,
           CTA.nv4 = Nv4,
           CTA.nv5 = Nv5,
           CTA.nv6 = Nv6

Debe tomarse en cuenta, que toda la macro debe ir en una sola linea y no en varias como muestro aqui (ya que esto generaria un error de compilacion), ya que aqui la puse asi, por razones de visializacion en el blog.

Para llamarla, unicamente tenemos que escribir el nombre de la macro y los valores que queremos asignar a las variables, asi:

// Llamamos a la macro para inicializa a cero
AsignaCta(0, 0, 0, 0, 0, 0);

// Asignamos con los valores de la cuenta
AsignaCta(m_pDat->m_nivel[0],
          m_pDat->m_nivel[1],
          m_pDat->m_nivel[2],
          m_pDat->m_nivel[3],
          m_pDat->m_nivel[4],
          m_pDat->m_nivel[5]);


Gente en contra del sistema: 2.
Agregado en el expediente de: Son Programatikon
Este wey dijo: Victor Ivan Mendez Castillo

 
  El 15 de septiembre de 2005 a las 11:15:31, los ilustre con esto.  


  Los lectores opinan:  

y que tal si solo le hago un for(c=0;c

Grajeda ha dicho!!,
El 22 de septiembre de 2005 a las 00:39:26


Notese que la asignacion del primer cuadro azul, indica que se esta asignando a variables diferentes y no a un arreglo.

En eso radica el asunto.

Coyote ha dicho!!,
El 22 de septiembre de 2005 a las 21:49:28



Recordar datos

Referencia

URL para referencias o trackbacks

 
   
   
LaInformacion.com lainformacion.com - Medio Oficial de los Premios Bitacoras 2009