C语言分析(关于指针,大神帮看看)

Dream1018 lin Dream1018 lin 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
其实题目挺简单,就是字符串连接,但我没有用连接函数,我突发奇想,想试试用指针来做,结果居然成了,
这让对指针一知半解的我有点惊奇,我尝试着讲讲我不成熟的想法,请大佬们帮我分析分析,看看我的理解是否有哪些不对的地方。

下面是我的代码

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
void main()
{
char a[1024],*c;
gets(a);
int len=0;
len=strlen(a);
c=&a[len];
gets(c);
puts(a);
}

我的想法就是:在第一次接受到字符串a之后,不再设立一个新的字符串b,而是利用指针c,
指针c的地址是:通过gets()后的a的结束处,应该会默认用'\0'替换掉'\n',而我就是将'\0'的地址
赋值给指针c,并且从指针c所指向的地址开始,继续gets(),这相当于就是继续在字符数组a中进行
接受,并且接收到原来接收的字符串的后边,在最后用puts()统一打印出来,我不知道别人是否有
和我类似的方法,不过这个方法确实是我突发奇想想到的,尝试着敲敲,没想到真的实现了。

还请大佬们帮我看看,看看我对指针是否还有什么理解不够的地方。拜托了!
@qzjhjxj @自信男孩
...全文

相关推荐

评论 5
收藏 已收藏
分享
返回顶部
Dream1018 lin
C语言 70,039 成员 243,237 内容