C语言数组指针的一个问题

2024-12-02 06:54:35
推荐回答(2个)
回答1:

判断过程是这样,看ptr是否指向字符串arr的结束标记
arr+5就是字符串arr的结束标记所在内存地址了(你的字符串arr里面只有ABCDE五个字符,加上最后的结束标记,arr+5就是结束标记所在的地址了)
每次循环,指针ptr后移1个位置,所以5次循环ptr分别指向ABCDE的内存地址,当ptr指向结束标记地址时,循环结束
而循环里你用的%s输出,就意味着你每次循环需要从ptr所在的内存地址开始,输出这个位置到字符串arr结束标记之间的所有内容

回答2:

你想做什么。