[C con Clase] ¿Que es mas recomendable ? (punteros)

rodolfo rosso paz rodolforossopaz en hotmail.com
Lun Nov 20 22:37:54 CET 2006


Muchas gracias Salvador y Steven por las molestias que se toman con la 
lista.

Hola a todos, gracias por atender mis consultas, quisiera saber si 
cualquiera de estas dos opciones
es válida o si una es preferible a la otra, las he probado y las dos 
funcionan, pero a lo mejor
una no es muy correcta, por estar manipulando posiciones de memoria con 
datos desconocidos.

/* Funcion : BuscaCaracter
    Recibe un puntero a char y un char
    devuelve la posision de encuentro o -1 si no encuentra */

int BuscaCaracter(char* pCadena, char cbCaracter)
{
    int nPosicion = 1;

    // ¿ que es mejor ? ¿esto?
    while(*pCadena   &&   *pCadena++  !=  cbCaracter)   nPosicion++;
    return((*pCadena   ||   *(pCadena-1) == cbCaracter) ?  nPosicion  :  
-1);

    // ¿o esto?  ¿ es valido retroceder una mas del limite de pCadena, 
mientras no le vaya a
                        hacer ninguna modificación, o no es lícito  ?
    pCadena--;
    while(*++pCadena && *pCadena != cbCaracter) nPosicion++;
    return(*pCadena ? nPosicion : -1);
}

De antemano gracias por la respuesta, Dios los bendiga

_________________________________________________________________
Consigue aquí las mejores y mas recientes ofertas de trabajo en América 
Latina y USA: http://latam.msn.com/empleos/





Más información sobre la lista de distribución Cconclase