:開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
GCC,debian
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
副程式(陣列),整數陣列元素個數無法計算,字串可以
餵入的資料(Input):
int a[]={4,5,6,7}
預期的正確結果(Expected Output):
int a[]=4,5,6,7,
錯誤結果(Wrong Output):
a[]=4,
程式碼(Code):(請善用置底文網頁, 記得排版)
1 #include <stdio.h>
2 void pntArr(int *a){
3 int len_a=sizeof(a)/sizeof(int),i;
4 printf("len....%d\n",len_a);
5 printf("a[]=");
6 for(i=0;i<len_a;i++){
7 printf("%d,",*(a+i));
8 }
9 }
10
11 int main(){
12 int a[]={4,5,6,7};
13 int len_a=sizeof(a)/sizeof(int);
14 pntArr(a);
15 }
補充說明(Supplement):
整數陣列call副程式,查google說是typeof不能計算動態陣列,
看其它類似的代碼都是長度(元素數量)一起傳過去,
我問題是在...我把int []改成char [],就能得到我預期的結果。
ex.. char a[]="abcd";