[問題] 關於指標與命令列參數的問題
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
C
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
無
問題(Question):
依此網頁 http://moodle.ncnu.edu.tw/mod/resource/view.php?id=58756
char *x[3]; // x: an array[3] of pointer to char
後面的註解我的理解是..是有三個指標的陣列
而用sizeof(x)檢驗..其值為12(3x4)..也的確是如此..
但*argv[]似乎就不同了..
不論*argv[n]..n填入1,2,3....
還是在命令列參數下..
其sizeof(argv)的值都是4..
其結果比較像是上面的網頁所述"(*argv)[]"的意義
不知道為什麼會是如此呢??
餵入的資料(Input):
預期的正確結果(Expected Output):
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
#include <stdio.h>
void main(int argc,char *argv[])
{
char *x[3];
char (*a)[3];
printf ("sizeof(x):%d\n", sizeof(x));
printf ("sizeof(a):%d\n", sizeof(a));
printf ("sizeof(argv):%d\n", sizeof(argv);
}
補充說明(Supplement):
煩請好心的前輩解惑一下..:)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.87.145.68
※ 編輯: ForOthers 來自: 219.87.145.68 (02/04 14:47)
→
02/04 14:48, , 1F
02/04 14:48, 1F
→
02/04 17:39, , 2F
02/04 17:39, 2F
→
02/04 18:12, , 3F
02/04 18:12, 3F
→
02/04 20:16, , 4F
02/04 20:16, 4F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):