int students = 4;
int grades = 4;
float grades = [students][grades] = {};
字符串 编译器应该会告诉你如下内容:
error: conflicting types for 'grades'; have 'float'
float grades = [students][grades] = {};
^~~~~~
note: previous definition of 'grades' with type 'int'
int grades = 4;
^~~~~~
error: expected expression before '[' token
float grades = [students][grades] = {};
^
型 通过为维度和数组选择不同的名称,并修复定义(删除虚假的额外=),问题得到了解决。
int num_students = 4;
int num_grades = 4;
float grades[num_students][num_grades] = {};
3条答案
按热度按时间esbemjvw1#
你的两次尝试都是在做同样的事情,而且都是无效的。您试图定义一个
float
变量,并使用无效的表达式对其进行初始化。也不能重新定义变量grades
。你在做这个:
字符串
编译器应该会告诉你如下内容:
型
通过为维度和数组选择不同的名称,并修复定义(删除虚假的额外
=
),问题得到了解决。型
hkmswyz62#
正如评论者指出的那样,你试图将其中一个变量重新定义为其他变量。变量需要有唯一的名字(在一个范围内。如果你不知道这是什么意思,那就坚持“变量需要唯一的名称”)。正如评论者指出的那样,变量名应该尽可能具有描述性。试试这个:
字符串
ipakzgxi3#
字符串