博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
验证 结构体指针与自增运算符
阅读量:5081 次
发布时间:2019-06-12

本文共 776 字,大约阅读时间需要 2 分钟。

#include 
#include
int main() { struct student { char *name; int score; }; struct student st = {
"Brian", 97}; struct student *ptr = &st; printf("ptr->name = %s\n", ptr->name); printf("*ptr->name = %c\n", *ptr->name); printf("*ptr->name++ = %c\n", *ptr->name++);//获取首地址字符后,将name指针友谊一位,指向r printf("*ptr->name = %c\n", *ptr->name); printf("ptr->score = %d\n", ptr->score); printf("ptr->score++ = %d\n", ptr->score++); printf("ptr->score = %d\n", ptr->score); return 0;}


1. ptr->name,等同于打印(*p).name。

2. *ptr->name,因为->的优先级高于*,所以相当于: *(ptr->name)。即指针首地址的那个字符。

3. *ptr->name++,由于*和++的优先级相同,而且结合性是由右至左,所以相当于: *((ptr->name)++),即获取首地址字符后,将name指针右移一位。(当前打印还是首地址的值)

4. *ptr->name,此处为验证上一步的指针位置。

转载于:https://www.cnblogs.com/iloverain/p/5632985.html

你可能感兴趣的文章
BigDecimal的3个toString方法
查看>>
github ignore 规范
查看>>
lnmp mysql高负载优化
查看>>
How type conversion works
查看>>
JavaScript正则表达式知识点
查看>>
bzoj 2763 [JLOI2011]飞行路线
查看>>
BZOJ2916 [Poi1997]Monochromatic Triangles 数论
查看>>
python实现三级菜单
查看>>
HDU:Integer Inquiry
查看>>
你真的很了解HTML标签吗? 试试这个超异类的HTML标签小测验吧!
查看>>
Javascript MVC架构之旅
查看>>
CollectionView Header And Footer 的使用
查看>>
JVM之深入浅出之垃圾收集算法
查看>>
选择工作 回溯搜索
查看>>
AFN-上传文件
查看>>
序列化
查看>>
MarkMan – 马克鳗,让设计更有爱!
查看>>
WPF去除窗体边框及白色边框
查看>>
AcWing 199. 余数之和 (除法分块)打卡
查看>>
hdu-1233 还是畅通工程(最小生成树)
查看>>