为什么允许字符串而数组不在此代码中?
Why strings are permitted while arrays are not in this code?
#include<stdio.h>
void function1(){}
int main(void)
{
function1(1,0.45,'b',"I am trying");
function1();
return 0;
}
编译得很好。
但下面显示
Error: use arr in function1 first....
请注意,我正在使用 code::blocks
IDE 并使用 .c 扩展名保存该文件。
#include<stdio.h>
void function1(){}
int main(void)
{
function1(1,0.45,'b',"I am trying",arr[12]);
function1();
return 0;
}
抱歉,我把它称为数组时犯了一个错误。但是 {1,2,3,4}
这是一个你会同意的数组..但这也行不通。是错误还是什么?
第二种情况,
function1(1,0.45,'b',"I am trying",arr[12]);
arr[12]
是一个变量,arr
本身没有定义,至少是一个数组。
在 C 中,您需要在使用前定义一个变量。
FWIW,
function1(1,0.45,'b',"I am trying");
有效,因为
1
是一个 int
文字
0.45
是 double
文字
'b'
是 char
文字
"I am trying"
是字符串文字
其中none是一个变量。
#include<stdio.h>
void function1(){}
int main(void)
{
function1(1,0.45,'b',"I am trying");
function1();
return 0;
}
编译得很好。 但下面显示
Error: use arr in function1 first....
请注意,我正在使用 code::blocks
IDE 并使用 .c 扩展名保存该文件。
#include<stdio.h>
void function1(){}
int main(void)
{
function1(1,0.45,'b',"I am trying",arr[12]);
function1();
return 0;
}
抱歉,我把它称为数组时犯了一个错误。但是 {1,2,3,4}
这是一个你会同意的数组..但这也行不通。是错误还是什么?
第二种情况,
function1(1,0.45,'b',"I am trying",arr[12]);
arr[12]
是一个变量,arr
本身没有定义,至少是一个数组。
在 C 中,您需要在使用前定义一个变量。
FWIW,
function1(1,0.45,'b',"I am trying");
有效,因为
1
是一个int
文字0.45
是double
文字'b'
是char
文字"I am trying"
是字符串文字
其中none是一个变量。