- ------<a target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
复制代码
我在做基础题的时候遇到一个关于指针修改指向地址内容的问题。
题目要求输入一个字符串,如果是字母就替换成后面的三个字母,比如:2g55 替换后是:2hij55
基础视频里,老师分析内存占用的时候,说字符串地址分配是这样的,如图
代码:- int main()
- {
- char string[]="2g556";
- char *p=&string[1];
- p="hij";
- return 0;
- }
复制代码 字符串在内存的地址按从上到下排列,指针p指向g所在的地址ffec6,原来存储一个字符的地址,现在改成了三个字符。会把后面地址的字符覆盖了吗?
还是从这个地址插入三个字符,后面的字符移到下面的内存地址中?或者又是以其它的存储方式在内存中存放?
请大神赐教,小弟不胜感激!
|
|