求高人指点!
写程序时,遇到问题!因为C语言不是很熟,望高人指点!问题是关于函数值返回的,这个在其他版本的C语言中是没问题的,但arduino中却返回为空!代码是char run_0(void){
return 5;
}
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
Serial.print("runt=");
Serial.println(run_0());
delay(500);
// put your main code here, to run repeatedly:
}
上面的代码在arduino中,返回的是“runt=”,没有run_0()函数的返回值5 !希望有人指点! 自己坐个板凳吧,把代码改了一下,用公共变量还是空
char val=0;
char run_0(char a,char b){
val=a+b;
return val;
}
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
Serial.print("runt=");
Serial.print(run_0(3,4));
Serial.print("runt2=");
Serial.println(val);
delay(500);
// put your main code here, to run repeatedly:
}
只能等高人指点了! 你知道 char 是什麼意思嗎?
char 的值是 5 時, 又是什麼樣的字符?
如果你想回傳數值, 就不要把結果設定為 char, 當你設定成 char 時, println 就不會幫你把數值轉成字符輸出, 而是直接把 char 的內容輸出了. 非常感谢高人指点!我改一下试试! 返回成功,再次感谢!之前也考虑过输出的是5的字符,后来改过用Serial.write()输出!但没想到是函数类型错误,如梦方醒!
页:
[1]