I am currently trying to solve a simple hackerrank problem but in a complex way. I'm attempting to keep all values in a structure. But when I try to write to the structure in the function inputNumbers, as soon as the scanf statement is hit, it returns a segmentation fault. I can't figure out what i'm doing wrong. Any ideas?
#include <stdio.h>
struct numberStructure {
int intOne;
int intTwo;
float floatOne;
float floatTwo;
} numberStruct, *numberStruct_p;
void inputNumbers(struct numberStructure *);
void outputNumbers(void);
int main(void) {
inputNumbers(numberStruct_p);
outputNumbers();
return(0);
}
void inputNumbers(struct numberStructure *numberStruct_p) {
printf("\n-----WELCOME TO THE PROGRAM-----\n");
printf("-----ENTER IN TWO INTEGERS (Space separated)-----\n: ");
scanf("%d %d", numberStruct_p->intOne, numberStruct_p->intTwo);
printf("-----ENTER IN TWO FLOATS (Space separated)-----\n: ");
scanf("%f %f", numberStruct_p->floatOne, numberStruct_p->floatTwo);
}
void outputNumbers(void) {
printf("\n%d %d", (numberStruct.intOne + numberStruct.intTwo), (numberStruct.intOne - numberStruct.intTwo));
printf("\n%.1f %.1f", (numberStruct.floatOne + numberStruct.floatTwo), (numberStruct.floatOne - numberStruct.floatTwo));
}