社区
C语言
帖子详情
指针减指针的问题
csShooter
2007-07-31 08:53:06
char*a,*b;
a = "123456";
b = "123456789";
printf("%d\n%d\n",&a,&b);
printf("%d\n",b-a); /* 能猜出来b-a肯定是strlen(a)+1 */
-------------------------------------------
输出:
2293628
2293624
7
----------------
b-a 值为7可以理解。但为啥a的地址xx28减b的地址xx24只有4呢?
...全文
293
10
打赏
收藏
指针减指针的问题
char*a,*b; a = "123456"; b = "123456789"; printf("%d\n%d\n",&a,&b); printf("%d\n",b-a); /* 能猜出来b-a肯定是strlen(a)+1 */ ------------------------------------------- 输出: 2293628 2293624 7 ---------------- b-a 值为7可以理解。但为啥a的地址xx28减b的地址xx24只有4呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xuegao007
2007-07-31
打赏
举报
回复
这两个指针相减是没任何意义的,你做联系还可以。
指向同一元素的两个指针相减才有意义。
阿发伯
2007-07-31
打赏
举报
回复
printf("%d\n%d\n",&a,&b);输出的是a,b变量的地址,也就是a,b在栈中的地址,printf("%d\n%d\n", a, b); 才是字符串的地址
csShooter
2007-07-31
打赏
举报
回复
感谢楼上两位,正是我想要的结果!
lockhall
2007-07-31
打赏
举报
回复
printf("%d\n%d\n",a,b);
這樣就可以了。
星羽
2007-07-31
打赏
举报
回复
printf("%d\n%d\n",a,b);
csShooter
2007-07-31
打赏
举报
回复
看来需要学习的地方太多了!
printf("%d\n%d\n",&a,&b);
------------------------------
上面这句话其实我只想知道a的地址是多少,b的地址是多少?!
是不是有错?
superyys
2007-07-31
打赏
举报
回复
/* 能猜出来b-a肯定是strlen(a)+1 */
不要挑战编译器的极限,正常情况下是这样的,也不排除编译器做个什么特殊优化,把变量的位置变换一下. a,b是指针的指针,按照LZ的思维,程序相连的变量在分配内存时也连在一起,而在32位机器上,指针变量都是一个unsigned int,也就是占用四个字节,当然是4了,如果你在dos 622下编译,我敢肯定是2,在64位xp 中用64位编译器编译,我敢肯定是8
www_adintr_com
2007-07-31
打赏
举报
回复
char a[] = "123456";
char b[] = "123456789";
csShooter
2007-07-31
打赏
举报
回复
两个变量是紧跟着初始化地!!
中间没有定义其它变量。应该可以!
lockhall
2007-07-31
打赏
举报
回复
/* 能猜出来b-a肯定是strlen(a)+1 */
這個不是肯定。
基于CC2430/31的Zigbee实践(5)--结构体
指针
减
1
问题
本文探讨了在特定嵌入式系统中,通过
指针
访问结构体成员的实现方式,特别是如何利用
指针
减
法来定位结构体头部,以及相关的内存分配与结构体布局细节。
foreach next 操作数组
指针
移动
问题
,多个数连加,连除,连
减
,连乘php版本
本文探讨了PHP foreach循环中
指针
行为的特性,如何避免key超出变量长度的
问题
,并提供了一个改进的多参数BC运算函数示例,以确保在复杂运算时
指针
正确管理。
C++数组
指针
不能自增1/自
减
1
本文详细探讨了
指针
自增自
减
操作的合法性
问题
,解释了为何指向数组的
指针
进行自增是非法的,同时提供了合法的
指针
操作示例。
指针
+ 数字 和
指针
-
指针
的一些
问题
本文探讨了
指针
运算的相关
问题
,包括
指针
加数字(需要考虑`sizeof`),
指针
减
数字(同样涉及`sizeof`计算间隔),以及
指针
加
指针
(非法操作)和
指针
减
指针
(合法且返回间隔的单元数)。重点在于理解
指针
运算中的地址偏移和类型大小的影响。
php foreach next,foreach next 操作数组
指针
移动
问题
,多个数连加,连除,连
减
,连乘php版本...
博客讨论了PHP中foreach循环对数组
指针
的影响,指出在进行
指针
操作时需要注意的
问题
。同时,介绍了如何封装bc系列数学运算函数,支持多个参数的加
减
乘除,并处理了可能的溢出和除数为零的情况。文章提供了详细的代码示例和测试用例。
C语言
70,038
社区成员
243,247
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章