问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

strcpy的一种版本里面有一条语句是这样的: while( (*strDest++ = * s...

发布网友 发布时间:2024-10-20 11:54

我来回答

5个回答

热心网友 时间:2024-11-20 06:23

strcpy是处理字符串的, 字符串以0结尾, 如果字符串没有问题就不会超出范围
(*strDest++ = * strSrc++) 先把*strSrc赋值给*strDest, 表达式的值是*strDest
然后后缀++让strDest和strSrc指向后一个,
表达式值与'\0'比较做为while条件
strSrc字符串到结尾后, *strSrc是0, 这个0会 = 赋值给strDest后, 才与'\0'比较,然后while结束
所以结束前字符串包括结尾的0都赋值过去了

如果不是字符串或本身就不正确, 那它也会一直循环直到0,这时就有可能超出本身的空间大小
所以实际用的时候一般用带缓存大小的版本 strncpy , 其它的字符串函数也有带n的版本
会要你把缓存的大小也传过去, 如果超过就不继续处理

热心网友 时间:2024-11-20 06:19

while( (*strDest++ = * strSrc++) != ‘\0’ ) ;这是个循环,(*strDest++ = * strSrc++) = ‘\0’就跳出循环了!

热心网友 时间:2024-11-20 06:25

这个子真指向的是数组 !='/0'的意思是截止到分节符处 而数组的最后一个位置存储的是'/0'
假如定义一个 a[5] 你strlen(a)之后得到的值是6 。实际上内存分配的时候给a分配了一个'/0’位置
所以指针是可以访问到的

热心网友 时间:2024-11-20 06:20

一种情况可能是该指针无越界可能性,

热心网友 时间:2024-11-20 06:26

* strdst++表示指针所指向的地址++并不是指针自己的地址++
所以是否越界关键看DST指向的东西是什么

不过指针++貌似有个问题曾经在VC上遇到过,函数堆栈内空间通过指针++访问空间debug和release版本的会有不同的行为
{
char m;
char a;
char b[10];
char *c=a[9];
*(c++)? == m == b
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
太平盛世专辑曲目 梦见自家灶台缺个角 如何看待宝马3系? - 知乎 为什么缺爱的女人婚姻难幸福快乐 求一些好看的架空言情小说,最好是以第一人称为视角的。小白文请绕。 带双目相机的无人机有哪些 禄莱1982年后 工业3d相机国内有哪些靠谱的厂商,特别是在阳光和弱光环境 海康全新双目单线相机 | 消盲区、抑杂光,引领3D检测新突破 10米范围内实现零盲区大FoV深度测量,奥比中光发布Gemini 2双目... 懂C语言的高手帮忙啊,有2个关于strlen函数的问题请求指教 ...printf("%d,%s\n",strlen(s2),strcat(s2,s1)); 这两种方法输出为什么... 怎么样编写一个程序,将字数组的前后空格删去(中间有空格) 新能源汽车在哪里充电 新能源车充电去哪里充源汽车充电在哪 波长到底是什么 红外报警探头简要概述 车打不上火,用另外个车电瓶,再用两根线正负极,直接按上,再打火,可以着... 萎缩性鼻炎有什么症状表现 鼻炎症状 ,怎么看出来是不是鼻炎症状呢?这几天鼻塞有浓鼻涕,有稍微咳嗽... 宝宝鼻炎就是流鼻涕吗 请问江小白YOLO(有路)演唱会长沙场的时间和地点 工作自我评价不足之处(优选4篇) 外地车厦门申请环保标志怎么申请 qq语音的时候我能听到我说话的回声,还可以听到对方电脑的声音,比如打 ... 我用了QQ音乐还有酷狗的伴奏,但是和好友语音别人都听不见?但是我说话别... 我现在上初四了,我很爱好体育。所以我报了体育特长生。我想知道再跑步... 安徽大学新生需要带被褥吗 学校的校风、学风、师生关系、教师的教育理念等属于显性课程,是否正确... ...在衣服和被子存活多久,需要做什么方式的消毒,消毒方式越简单越好... ...学风和教风是学校文化的重要结构,它属于()。 我的路由器网线接好,本本里面显示连接成功,但是去到路由器的设置页面就... C语言 strcpy(pstr[1],str[0]),这个语句为什么是错的 ...的是磊科的无线路由器,一台台式有线上网,一台本本无线上网,无线可以... 家里装了无限路由器后,本本能无线上网,但台机连接总提示错误678,求指导... 光谱波长的分类 本本和台式机之间怎么连接局域网? 我有两台电脑一个本本一个台式的,用的是腾达路由器,可是台式电脑显示网 ... 无线路由器,家里的台式网上邻居本地连接里面显示电缆被拔出,但是网络本... 可见光的波长范围是如何界定的 无线路由器登不上,台式和本本都连不上 中国银行长城电子借记卡消户 派克变换矩阵为什么要加2/3 动态电力系统的理论和分析目录 ...已拆掉节温器,水温还是过高,小水箱反水出来,怎么回事, 好运壁纸|“一切所期望的都会稳稳妥妥到来” 好运壁纸 | “一切所期望的都会稳稳妥妥到来” 柴霁慈爱董振泽吗? 有哪些好看的全面屏卡通壁纸? 30条温柔干净的优质签名 超级温柔的生活句子(关于生活的温柔短句)