Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/06/2012, 03:35
Wolfchamane
 
Fecha de Ingreso: junio-2008
Ubicación: Madrid
Mensajes: 73
Antigüedad: 15 años, 11 meses
Puntos: 1
Pregunta Problema: puntero invalido

Bueno días.
Necesito ayuda para solucionar un cierto "problema".

Usando código para una aplicación Win32, en cierto módulo de la misma tengo un *.exe* cuyo inicio típico se basa en la siguiente función:

Código:
int main (int argc, char *argv[])
{
...
}
Bien.
Necesito leer un número X de argumentos de entrada, que puedo controlar con argc.

Código:
for (i = 0; i < argc; i++)
{
...
}
Y en función de cada caso, cómo me van a venir cadenas de texto y números ... pues ...

Código:
switch (i)
{
...
}
Bien, el problema es que quiero controlar adecuadamente que se pueda leer el puntero, y había pensado en algo cómo

Código:
if (argv[i] != NULL)
...
Pero argv[i] puede ser nulo (0x00000000) porque por azar así puede pasar, o bien, no serlo, que es lo más habitual, (0x<basura>). El puntero, hablando desde un punto de vista práctico es nulo, pero bajo el punto de vista del compilador es "invalido". Mi pregunta es, ¿puedo usar INVALID_HANDLE_VALUE para determinar si el puntero argv[i] es válido?

Gracias.