[問題] main的傳入值argv的問題..
hi,all
最近一直在想main函式裡的 argv傳入值的宣告
感覺觀念不是很了解
第1
如果宣告成
char **argv
或
char *argv[]
好像這2者的用法是完全一樣的??
不過就意義上來說,我只知道
第一個宣告成雙重指標
第二個是宣告成字元的指標陣列
第2
爬文當中有一個網友推文說
宣告成 char argv[][]
也是和前兩種的使用方法一樣
可是我這樣宣告就無法編譯...@@
dev-c++的錯誤訊息就直接說
declaration of `argv' as multidimensional array must
have bounds for all dimensions except the first
In function `int main(int)':
第3
假設我在shell下丟參數給程式來執行
program.exe abc def xyz
這時在程式中
argv[0]="program.exe"
argv[1]="abc"
argv[2]="def"
argv[3]="xyz"
那麼我如果想印出參數裡的「字元」
像,"abc"的a、"def"的e、"xyz"的z 時
我要怎麼寫呢...一直寫不出來@@
Thanks!!
--
我從小在溪流邊看到魚兒力爭上游
我就立志以後一定要做大事不要做大官
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.99.203
※ 編輯: OpenSkyWin 來自: 61.228.99.203 (05/11 17:01)
推
05/11 16:59, , 1F
05/11 16:59, 1F
→
05/11 17:00, , 2F
05/11 17:00, 2F
推
05/11 17:24, , 3F
05/11 17:24, 3F
→
05/11 17:25, , 4F
05/11 17:25, 4F
→
05/11 17:26, , 5F
05/11 17:26, 5F
→
05/11 17:26, , 6F
05/11 17:26, 6F
推
05/11 17:32, , 7F
05/11 17:32, 7F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):