我的代码有什么问题?我试图从函数ignition_status返回一个值,它没有返回。我在代码中看不到任何问题。
#include<stdio.h>
#include<stdint.h>
const char * ignition_status();
const char *ign_st;
int main()
{
printf("%s", ignition_status(1));
return 0;
}
const char * ignition_status(int st)
{
if(st==1)
{
const char *ign_st="ON";
}
else
{
const char *ign_st="OFF";
}
return ign_st;
}
...谢谢
答案 0 :(得分:3)
评论指出了正确的方向,这是一个工作样本:
#include <stdio.h>
const char * ignition_status(int st)
{
const char *ign_st;
if(st==1) {
ign_st="ON";
} else {
ign_st="OFF";
}
return ign_st;
}
int main()
{
printf("%s", ignition_status(1));
return 0;
}
答案 1 :(得分:2)
只需删除const char *
声明中ign_st
前面的if/else
:
#include<stdio.h>
#include<stdint.h>
const char * ignition_status();
const char *ign_st;
int main() {
printf("%s", ignition_status(1));
return 0;
}
const char * ignition_status(int st) {
if(st==1) {
ign_st="ON";
} else {
ign_st="OFF";
}
return ign_st;
}