0
我想*两个char之间进行比较,所以我做到这一点使用strcmp, 看,在调试模式下,在双方的strcmp的char *获取相同的值,但仍然是 从调试器#C的strcmp()不工作,因为它应该
这里PIC:不会返回0,并跃过如果()条件,而不是进入它的 http://img405.imageshack.us/img405/5218/111fi.jpg
Company FindCompany(CompanyL pcompanyList, int companyIdentityDigit)
{
Company companyFound;
char *psearchWord;
psearchWord = (char*)malloc(10*sizeof(char));
switch(companyIdentityDigit) {
case 0:
strcpy(psearchWord , "Pelephone");
break;
case 2:
strcpy(psearchWord , "Cellcom");
break;
case 4:
strcpy(psearchWord , "Orange");
break;
}
while(pcompanyList->next != NULL) {
if(strcmp(pcompanyList->thisCompany->pcompany , psearchWord) == 0) {
free(psearchWord);
return pcompanyList->thisCompany;
}
pcompanyList = pcompanyList->next;
}
free(psearchWord);
return NULL;
}
为什么是它?
你用什么值调用它。 – 2010-11-29 02:02:31