C++这是为什么啊

[复制链接]
查看11 | 回复1 | 2008-12-8 15:55:14 | 显示全部楼层 |阅读模式
#include
using namespace std;
void main()
{
char a[100]={"strend"};
coutf:\vs2008c++\test\test\test.cpp(5) : error C2078: 初始值设定项太多
那为什么这个就可以呢?char *a[]={"strend","sdfsdf"};

回复

使用道具 举报

千问 | 2008-12-8 15:55:14 | 显示全部楼层
char a[100]={"strend","sd}; 定义了一个长度的100的一维数组,但是你却为其指定了一个二维的初始化列表。而且,结尾还少了一个引号。char a[2][100]={"strend","sd"};这样才可以。char *a[]={"strend","sdfsdf"};实际上,这也是定义了一个“二维数组”,而且是一个不规则数组,[]的数值(第二维的长度)由初始化列表中的每一项的长度确定,第一维的长度由初始化列表中的项目数量确定。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行