C++ 笔记:数组存储栈溢出

#include <iostream>
using namespace std;
int main()
{
	char a[1];
	char b[1];
	int c;
	scanf("%s%s%d",a,b,&c);
	printf("%s,%s,%d",a,b,c);
    return 0;
}

无法正确获取的a,这里可以大致判断是与字符串末尾的'\0'有关。验证如下:

预备知识:

        1、C++中 数组 为内置的数据类型,存放在栈中

        2、栈中内存地址由小到大(从上往下),数组元素从首地址开始依次向下存放

取出char a[1]、char b[1]数组地址

猜你喜欢

转载自blog.csdn.net/m0_61598337/article/details/128293799