Reputation: 289
whats wrong with my code? im trying to return a value from function ignition_status, its not returning. I cant see any problem in my code.
#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;
}
Thanks...
Upvotes: 1
Views: 55
Reputation:
Just remove const char *
in front of ign_st
in if/else
statement:
#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;
}
Upvotes: 2
Reputation: 5408
The comments are pointing you to the right direction, here is a working sample:
#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;
}
Upvotes: 3