#include<iostream>
using namespace std;
#include<cstdlib>
#include<cstdio>
int main()
{
char a[] = { 'j','5','k'};
int b[] = { 1,2,30 };
cout << a << endl;
cout << b << endl;
int c;
cin >> c;
return 0;
//结果是这样,不理解,希望有大佬能解释一下,万分感谢
}

c++中输出字符数组名字,输出的不是其地址,而是乱码,和字母
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- CSDN专家-深度学习进阶 2022-04-03 14:21关注
因为字符数组没加\0作为结束标志,所以后面有问号,输出b是数组的地址
改之后#include<iostream> using namespace std; #include<cstdlib> #include<cstdio> int main() { char a[] = { 'j','5','k','\0'}; int b[] = { 1,2,30 }; cout << a << endl; for (int i=0;i<3;i++) cout << b[i] <<" "; int c; cin >> c; return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 2无用