作者MaYingJoe (我不是马奶)
看板C_and_CPP
标题[问题] 如何使用指标修改节点内的资料呢?
时间Sun Jan 22 02:21:57 2017
C++的问题 是想试作linked list想到的
小鲁是刚学C++的超级新手
有搜寻爬文看到类似的题目但是看不太懂解释~~
举例来说 在int或char中
我只要
int a ;
int* ptr ;
ptr = &a ;
之後我只要直接写 *ptr=某个数字
a就会变成某个数字
在char也可以办到~
可是如果同样的方式可以在节点上作的到吗 ?
比如我
struct NODE {
char data;
struct NODE* next;
}
struct NODE node1,node2,node3;
struct NODE* ptr ;
node1.data = 'a' ;
node1.next = &node2 ;
想问的是
这样子我的node1的data是a 而且next指向node2了吧
那假设我用 ptr = &node1 ; 的确会编译过 应该也有指向node1了
可是我用改变int的方式就没办法用在这
比如我想要 *ptr.data = 'b' 或是 *ptr.next=NULL 或 *ptr.next=node3
试图改变node1的内容 都不会编译过
想问该怎麽作才能用指标改变或读取节点内容呢 ?
感谢前辈们指教 > /// <
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.24.210.190
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1485022921.A.E6D.html
1F:→ PkmX: (*ptr).data或是ptr->data 01/22 02:25
感谢大大 这样可以~~!!
※ 编辑: MaYingJoe (114.24.210.190), 01/22/2017 03:32:28
2F:→ stupid0319: (*ptr).data好像会被有的IDE警告,像android studio 01/22 11:14
3F:推 b0920075: 用箭头指就好了吧 01/22 19:38
4F:推 friendever: Android studio原来可以写c++@@长见识了 02/01 02:18
5F:推 dick51207: 要多加括号 .优先权关系 or 用箭号运算子-> 02/02 19:00