社区
C语言
帖子详情
[菜鸟求助]达人帮我看下这段C语言代码什么意思啊?
fisherofsmea
2007-09-12 09:59:06
main()
{
char *p="abcdefgh",*r;
long *q;
q=(long *)p;
q++;
r=(char *)q;
printf("%s\n",r);
}
运行结果:efgh
从q=(long *)p;这句开始,就看不懂了。这是啥意思啊?
达人请指教!谢谢!
...全文
111
5
打赏
收藏
[菜鸟求助]达人帮我看下这段C语言代码什么意思啊?
main() { char *p="abcdefgh",*r; long *q; q=(long *)p; q++; r=(char *)q; printf("%s\n",r); } 运行结果:efgh 从q=(long *)p;这句开始,就看不懂了。这是啥意思啊? 达人请指教!谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
danyajuan
2007-10-29
打赏
举报
回复
就是类型转换和指针的操作
ddff12
2007-09-12
打赏
举报
回复
main()
{
char *p="abcdefgh",*r; //声明p为字符串指针指向位置是a所在内存地址
long *q; //长整型的指针q,每移动一次就要向前或向后移动sizeof(long)大小的内存单元
//long型大小为4
q=(long *)p; //让long型指针q指向p所指内存位置,即a所在内存地址,这里用了强制转换
q++; //q向前移动一相当于在内存上走4字节(long型的尺寸为4),这样q就指向了e所在
//的内存地址
r=(char *)q; //让char型指针指向q所指的内存地址,即e所在的地址处
printf("%s\n",r); //输出r所指的内存处所有字符型数据,%s即为输出字符串,结果为efgh
}
kawenmai
2007-09-12
打赏
举报
回复
q=(long *)p; /*将P强行转换成long格式*/
q++; /*在long的格式下,q指针+1.注意的是1个long占用4个字节
的内存所以+1就是指针跳了4个字节.*/
r=(char *)q; /*强行转回字符格式*/
printf("%s\n",r); /*打印,这是指针跳了4个,所以指向e了.*/
fisherofsmea
2007-09-12
打赏
举报
回复
多谢!
Treazy
2007-09-12
打赏
举报
回复
main()
{
char *p="abcdefgh",*r;
long *q;
q=(long *)p; //这里将p强制转换为指向long类型的指针,并将指针赋给q
//long类型是4个字节
q++; //q指向e
r=(char *)q; //把q强制转换为指向char类型的指针,并将指针赋给r
//char是1个字节,r指向e
printf("%s\n",r);//输出efgh
}
C语言
菜鸟
进阶-- 多线程与线程安全视频教学
尹成老师带你步入 C 语言的殿堂,讲课生动风趣、深入浅出,全套视频内容充实,整个教程以 C 语言为核心,完整精彩的演练了数据结构、算法、设计模式、数据库、大数据高并发检索、文件重定向、多线程同步、进程通讯、黑客劫持技术、网络安全、加密解密,以及各种精彩的小项目等,非常适合大家学习!
我在CSDN参与的3000个帖子
今日偶然翻到,感慨万千 1:申述:版主,是否扣了我的专家分? 2:100分急求,随机输出十个小写字母,但是,要求这十个字母不相同 3:求Sn=a+aa+aaa+…+aaa…a(n个a)之值 4:数组题 望高手
帮
忙! 5:呵呵,来推荐一下我的网站,本站提供大量当今流行的免费的音乐和免费电影,常用软件、游戏、精美图库下载,希望对网友有
帮
助!顺便散分! 6:VBA请教怎
题解 | #近一个月发布的视频中热度最高的top3视频#
这次是自己做出整个二叉树的最后一道题目了,都是前面所有的题目,积累的知识厚积薄发,带来的效果,真棒!从七月份开始,投递了那么多岗位,面试了那么多公司,长光卫星是一个让我感觉到恶心的公司。1,自我介绍2,碰到过什么error3,口述一段导致oom的
代码
4,oom之后怎么排查问题,怎么优化,具体到怎么写命令5,cpu爆了怎么排查,怎么优化,具体怎么。#我的求职思考# 末流211本,大一开始自学技术,本来想着美美去工作了,但看着形势不好,放弃了实习准备考研,现在准备秋招才发现自己有多菜,技术薄弱,项目简陋,八。
想要,不一定得到,一定要,则必成功——一封初为程序员充满困惑的大学毕业生的来信以及本人
尊敬的程杰老师:您好! 首先请允许我这么称呼你,虽然你是高级软件工程师,但我觉得叫你高级软件工程师老师更能表达我对你所写的《大话设计模式》一书无比的喜爱和对你本人无比的敬佩! 我是个刚大学毕业半年的初级程序员。我大学专业是生命科学,但由于大学里的一次偶然事件使我爱上了编程。由于不是计算机专业,所以我在大学阶段只是用VB 编了很多小的程序,并且由于大学4年里连续三年
想要,不一定得到,一定要,则必成功——一封初为程序员充满困惑的大学毕业生的来信以及本人回复...
尊敬的程杰老师:您好! 首先请允许我这么称呼你,虽然你是高级软件工程师,但我觉得叫你高级软件工程师老师更能表达我对你所写的《大话设计模式》一书无比的喜爱和对你本人无比的敬佩! 我是个刚大学毕业半年的初级程序员。我大学专业是生命科学,但由于大学里的一次偶然事件使我爱上了编程。由于不是计算机专业,所以我在大学阶段只是用VB编了很多小的程序,并且由于大学4年里连续三年参加了3次...
C语言
69,377
社区成员
243,076
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章