referencia indefinida a `strlwr ‘

Mi código es como un compresor de texto, lee texto normal y se convierte en números, cada palabra tiene un número. Se comstack en DevC ++ pero no termina, sin embargo, no se comstack en Ubuntu 13.10. Recibo un error como en el título en Ubuntu “referencia indefinida a` strlwr ‘”, mi código es un poco largo, así que no puedo publicarlo aquí, pero uno de los errores es de aquí:

//operatinal funcitons here int main() { int i = 0, select; char filename[50], textword[40], find[20], insert[20], delete[20]; FILE *fp, *fp2, *fp3; printf("Enter the file name: "); fflush(stdout); scanf("%s", filename); fp = fopen(filename, "r"); fp2 = fopen("yazi.txt", "w+"); while (fp == NULL) { printf("Wrong file name, please enter file name again: "); fflush(stdout); scanf("%s", filename); fp = fopen(filename, "r"); } while (!feof(fp)) { while(fscanf(fp, "%s", textword) == 1) { strlwr(textword); while (!ispunct(textword[i])) i++; if (ispunct(textword[i])) { i = 0; while (textword[i] != '\0') i++; i--; while (ispunct(textword[i])) i--; i++; i=0; while (isalpha(textword[i])) i++; textword[i] = '\0'; } addNode(textword); } } .... //main continues 

strlwr() no es la función C estándar. Probablemente sea provisto por una implementación mientras que el otro comstackdor que use no lo haga.

Usted mismo puede implementarlo fácilmente:

 #include  #include char *strlwr(char *str) { unsigned char *p = (unsigned char *)str; while (*p) { *p = tolower((unsigned char)*p); p++; } return str; }