下面是我的代碼。我知道它是一個非常簡單的問題,但我不知道爲什麼這個代碼不工作。我只是想數清我數組,但它總是向我展示計數上面的代碼1.String Array Count
#include<stdio.h>
#include<string.h>
int main()
{
char *str[]={"Bharti","Bharat","Akas"};
int a=PalindromeLengthPuzzle(str);
return 0;
}
int PalindromeLengthPuzzle(char* input1[])
{
//const char *mystr=input1;
int i;
int sarray= sizeof(input1)/sizeof(input1[0]);
printf("%s",input1[0]);
//int sarray=sizeof(mystr)/sizeof(mystr[0]);
//int x=sizeof(mystr[0]);
printf("%d",sarray);
//printf("%s",input1[1]);
/*for(i=0;i<sarray;i++)
{
printf("%s",input1[i]);
}*/
return 0;
}
輸出爲Bharti1
串的數量,它應該是3而不是1任何幫助將不勝感激。
這是允許在我的代碼'while(input1 [i]!= NULL){一些邏輯;我++;}'? –
@GS Abhaypal是的,你可以檢查下一個值是否是哨兵。:) –
這就是我得到的'BhartiBharatAkasÀÁo·àÃo·p°o·d°o·d°o'',:/我想它會去在無限循環中,並在實際值之後添加垃圾值。 –