C_and_CPP 板


LINE

※ 引述《conan77420 (小马非马)》之铭言: : 开发平台:Dev-c++ (version 4.9.9.2) : 以下是练习到一半的部分程式 : int array[3][2]={{10,20},{15,25},{50,40}}; : int **ptr1=array; //我照书上打的,可是为什麽编译过不了? : int *ptr2=&array[1][1]; : int (*ptr3)[2]=&array[2]; //想请问这样写跟 int *ptr3[2]=&array[2];有何不同? : //不加括号编译过不了 : cout<<"ptr1:"<<ptr1<<endl; //因为ptr1的宣告有问题, : //所以这些当然也看不到囧 : cout<<"*ptr1:"<<*ptr1<<endl; : cout<<"**ptr1:"<<**ptr1<<endl; : cout<<"ptr3:"<<ptr3<<endl; : cout<<"*ptr3:"<<*ptr3<<endl; : *(*ptr3+1)=array[2][1]; : cout<<"ptr3:"<<ptr3<<endl; //是我观念有问题吗?为什麽ptr3 : // 里面的东西都没变 : cout<<"*ptr3:"<<*ptr3<<endl; : for(int i=0 ; i<3 ; i++) : for(int j=0 ; j<2 ; j++) : { cout<<array[i][j]<<endl;} : ============================================= : 想法:1.ptr1用双指标宣告,给他阵列起始位址为什麽编译不过,我毫无想法囧 因为两者的type不同 ptr1是 int ** array是int (*)[2] : 2.我知道int *ptr3[2] 是有两个指标,然後放在一起以array型式产生 : 但是加括号我就不知道是什麽意思了 int *ptr3[2] array of two pointers to int int (*ptr3)[2] a pointer to an int array with two elements : 3.ptr3值的部分,一开始就让他的指标指到&array[2],虽然实际的工作内容 : 我不清楚〈请大大指正我〉 但是值应该会有改变吧... : 可是ptr3跟array中的值都没改变, 不知道为什麽,先猜是我判断方式写错 *ptr3+1 == &array[2][1] 这两个是一样的,所以*(*ptr3+1)=array[2][1]做完 之後有做等於没做 ============================================== 改一下你原本的code 看是否会更了解一些 #include <iostream> #include <cstdlib> using namespace std; int main(void) { int array[3][2]={{10,20},{15,25},{50,40}}; int *temp[3]; int **ptr1=(int **)temp; for (int i = 0 ; i < 3 ; i++) temp[i] = (int *)array + i * 2; int *ptr2=&array[1][1]; int (*ptr3)[2]=&array[2]; cout<<"ptr1:"<<ptr1<<endl; cout<<"*ptr1:"<<*ptr1<<endl; cout<<"**ptr1:"<<**ptr1<<endl; cout<<"ptr3:"<<ptr3<<endl; cout<<"*ptr3:"<<*ptr3<<endl; *(*ptr3+1)=array[2][1]; cout<<"ptr3:"<<ptr3<<endl; cout<<"*ptr3:"<<*ptr3<<endl; cout<<"**ptr3:"<<**ptr3<<endl; for(int i=0 ; i<3 ; i++) for(int j=0 ; j<2 ; j++) { cout<<array[i][j]<<endl;} system("pause"); return 0; } --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 58.115.9.50 ※ 编辑: loveflcty 来自: 58.115.9.50 (12/02 01:41) ※ 编辑: loveflcty 来自: 58.115.9.50 (12/02 01:44)







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灯, 水草

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

TOP