Cession rend pointeur d'entier sans cast

Venant de Java fond je suis en train d'apprendre le C, mais je trouve ces vagues messages d'erreur du compilateur de plus en plus frustrant. Voici mon code:

/*
 * PURPOSE
 *      Do case-insensetive string comparison.
 */
#include <stdio.h>
#include <string.h>
#include <ctype.h>

int compareString(char cString1[], char cString2[]);
char strToLower(char cString[]);

int main() {
    //Declarations
    char cString1[50], cString2[50];
    int isEqual;

    //Input
    puts("Enter string 1: ");
    gets(cString1);
    puts("Enter string 2: ");
    gets(cString2);

    //Call
    isEqual = compareString(cString1, cString2);
    if (isEqual == 0)
        printf("Equal!\n");
    else
        printf("Not equal!\n");

    return 0;
}

//WATCH OUT
//     This method *will* modify its input arrays.
int compareString(char cString1[], char cString2[]) {
    //To lowercase
    cString1 = strToLower(cString1);
    cString2 = strToLower(cString2);

    //Do regular strcmp
    return strcmp(cString1, cString2);
}

//WATCH OUT
//     This method *will* modify its input arrays.
char strToLower(char cString[]) {
    //Declarations
    int iTeller;

    for (iTeller = 0; cString[iTeller] != '
/*
* PURPOSE
*      Do case-insensetive string comparison.
*/
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int compareString(char cString1[], char cString2[]);
char strToLower(char cString[]);
int main() {
//Declarations
char cString1[50], cString2[50];
int isEqual;
//Input
puts("Enter string 1: ");
gets(cString1);
puts("Enter string 2: ");
gets(cString2);
//Call
isEqual = compareString(cString1, cString2);
if (isEqual == 0)
printf("Equal!\n");
else
printf("Not equal!\n");
return 0;
}
//WATCH OUT
//     This method *will* modify its input arrays.
int compareString(char cString1[], char cString2[]) {
//To lowercase
cString1 = strToLower(cString1);
cString2 = strToLower(cString2);
//Do regular strcmp
return strcmp(cString1, cString2);
}
//WATCH OUT
//     This method *will* modify its input arrays.
char strToLower(char cString[]) {
//Declarations
int iTeller;
for (iTeller = 0; cString[iTeller] != '\0'; iTeller++)
cString[iTeller] = (char)tolower(cString[iTeller]);
return cString;
}
'
; iTeller++) cString[iTeller] = (char)tolower(cString[iTeller]); return cString; }

Cela génère deux avertissements.

  • cession rend pointeur d'entier sans un casting
    • cString1 = strToLower(cString1);
    • cString2 = strToLower(cString2);
  • retour rend entier de pointeur sans un casting
    • retour cString;

Quelqu'un peut m'expliquer ces avertissements?

InformationsquelleAutor Pieter | 2010-01-15