为什么会有一个问号,这个问号表示什么

img


为什么会出现一个问号,是越界了吗,如果把!去掉,world后面就出现一个中文,请问哪里越界了,还是程序问题,我在手机编译器上原代码输出就没问题

因为你没有给str2初始化,未初始化的变量里面不一定都是0,里面的数据是未知的 ,所以正好你把str1的内容复制给str2的时候str2里面str2[i]正好是个问号。
解决方法:1、char str2[80] = {0};这样定义 2、在printf之前加一句str2[i] = '\0';