Comparaciones no "case-sensitive" en C

onic
13 de Agosto del 2005
Hola.

Necesito comparar (con if) una variable con el dato que teclea el usuario del programa, que se guarda en otra variable.

La variable 1, tiene como valor Probando, pero me da igual que el usuario teclee probando, Probando, PROBANDO, pRobaNdo, etc.

hay alguna función con la que pueda hacer "if (variable1 == funcion(variable2)) { ... }" ?

Muchas gracias.

Felix
13 de Agosto del 2005
si estas usando caracteres
al comparar por ejemplo 'a' == 'A';
el resultado se ra false o 0;
si queires que eso no sea asi deveras convertir la variable de entrada a minuscula siempre
lowcase(varentrada) ; esto te convertira a minuscula si es mayiscula y si es minuscula la dejara asi,

ahora si estas utilizando char* o char[] (cadenas)

usa strcmp(cadena1,cadena2);
esto te dara -1 si cadena1 es menor 1 si cadena1 es mayor y 0 si son iguales ..esto lo realizara diferenciando minusculas y mayusculas para evitar esto usa :
strcmpi(cadena1,cadena2); que funciona igual pero ignorando minusculas y mayusculas.


onic
13 de Agosto del 2005
Muchísimas gracias!