xt5 escribió:http://debugmo.de/?p=61
edit
no es que pueda estar en cualquiera de las dos, DEBE estar en las dos cadenas y en la misma posicion.
GameZelda se refiere al codigo de la implementacion de strcmp y tu te refieres a la llamada que hicieron en nintendo.
De todas formas si se hubiera comprobado correctamente el valor de entrada en strcmp no hubiera dado un resultado erroneo.
strcmp("gatete",NULL);
Debería devolver un entero mayor que 0 ,"gatete" es mayor que
Igual se trata de un error en la iniciacion de una variable de resultado
Edit:
Acabo de probar un c un simple código:
#include
int main(){
printf("resultao: d%", strcmp("gatete",NULL));
return 0;
}
Y recibo un segfault,no sabía que era responsabilidad del programador comprobar que no se le pasara un null como argumento.
Es más la manpage de mi maquina no dice nada de "Bytes following a null byte are not compared." que si se menciona en otros sitios que he leido.
Ni en la referencia de the Open group ni en el manual de la glibc se menciona nada.
¿Y esto por que es asi por ahorrarse una comparación?


), en verdad las tengo todas en 5*