C_and_CPP 板


LINE

各位先进好 小弟在看c++ primer中文版的"传递一个多维Arrays" (p.241) 书这里写的跟第12戒一样, 接多维阵列必须用指标接, *参数要先括弧起来再接着[] 但为何p.244处理命令列选项*argv[] (亦等於**argv) 没有先括弧起来? int main(int argc, char *argv[]){ ... } 阵列不是不能直接传递吗? 呼叫这个main要怎麽传参数进去呢? 烦请帮小弟解惑, 谢谢各位 === (12:35增加) === 小弟自己的理解如下: char *arg1 = "prog"; char *arg2 = "-d"; char *arg3 = "-o" char *arg4 = "ofile"; char *arg5 = "data0"; char *argv1[] = {arg1, arg2, arg3, arg4, arg5}; char **argv2 = argv; 所以argv2是pointer to array of pointers argv1是array of pointers 所以这里传递给main的参数是array of pointers, 不是array of arrays --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 42.73.254.249
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1478402978.A.C5C.html
1F:→ pttworld: 命令本身是一维形成可以多命令的命令列。11/06 11:54
2F:→ stupid0319: 括弧是? (*argv)[]还是(*)argv[],还是(*)(*)argv?11/06 11:54
第一个, 就是新手13戒的第12点 ※ 编辑: balaking (42.73.254.249), 11/06/2016 12:43:59
3F:→ stupid0319: 原PO可能误会了阵列宣告了,argv1本身就像pointer一样 11/06 13:08
4F:→ stupid0319: 但又不是pointer,但使用上跟pointer有87分像 11/06 13:10
5F:→ balaking: 可是书里是说没括弧是array, 有括弧是pointer耶... 昏倒 11/06 13:33
6F:→ stupid0319: 是这样没错,但array存取跟pointer存取是一样 11/06 13:52
7F:→ stupid0319: 阵列传递就是你宣告的名称,此时array就是个pointer 11/06 13:54
8F:→ stupid0319: 书翻到阵列的章节多看一下 11/06 13:56
9F:推 b0920075: array只有传递参数的时候才可以当成pointer看吧 11/06 15:12
10F:推 LPH66: argv 的"二维阵列"型式不是直接一个二维阵列传进来 11/06 16:06
11F:→ LPH66: 而是一个「字元指标」的阵列, 各元素指向一个字元阵列 11/06 16:07
12F:→ LPH66: 阵列和指标都可以使用 [] 存取, 但意义不一样 11/06 16:08
13F:推 EdisonX: 你讲得对啊,传给main的是 array of pointers 没错 , 只是 11/06 16:15
14F:→ EdisonX: pointer 指向的内容是外部给的,app再复制到唯读区,所以若 11/06 16:15
15F:→ EdisonX: 你保证argc>=2时,可以直接 argv[1]="test",指向其他地方 11/06 16:16
16F:→ EdisonX: 这样没错啊 11/06 16:16
17F:→ CoNsTaR: *argv[] 是先往右读再往左读 所以 *(argv[]) 才和没有括 11/06 16:48
18F:→ CoNsTaR: 号的 *argv[] 一样是 array of pointer 11/06 16:48
19F:→ CoNsTaR: (*argv)[] 就变成 pointer to array 了 11/06 16:48
20F:→ balaking: 了解, 谢谢各位 11/06 17:10
21F:→ balaking: 实务上函式参数是不是比较常设计成array of pointers, 11/06 17:21
22F:→ balaking: 而pointer to array比较少用? 感觉後者的使用时机很少@@ 11/06 17:21
23F:→ pttworld: 有星号就有pointer字,array of arrays看不到。 11/06 18:27
24F:→ pttworld: 多个pointer是每个都指向,那是把指向物给理解成什麽。 11/06 18:28
25F:推 longlongint: 建议把记忆体位置列出来 然後用excel玩填空游戏(? 11/07 01:31







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:iOS站内搜寻

TOP