Does anybody know what is wrong with this piece of code? i can't see to find the issue among the comparable questions.
The code is written in C, and i keep getting this error. I do add -D SET_MIN_TEMP=5 -D Set_MAX_TEMP=30 to the gcc compile line to make sure the ifndefs should be false...
#ifndef CONFIG_H
#define CONFIG_H
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <stdint.h>
#ifndef RUN_AVG_LENGTH #define RUN_AVG_LENGTH 5
#endif
#ifndef SET_MIN_TEMP printf("please set SET_MIN_TEMP \n");
#endif
#ifndef SET_MAX_TEMP printf("please set SET_MAX_TEMP \n");
#endif
typedef uint16_t sensor_id_t;
typedef uint16_t room_id_t;
typedef double sensor_value_t;
typedef time_t sensor_ts_t; // UTC timestamp as returned by time() - notice that the size of time_t is different on 32/64 bit machine
typedef struct { sensor_id_t id; sensor_value_t value; sensor_ts_t ts;
} sensor_data_t;
typedef struct { sensor_id_t sensor_id; room_id_t room_id; double running_avg[5]; sensor_ts_t timestamp;
} sensor_node_t;
#endif // CONFIG_H 6 1 Answer
You can not use a function call (printf) outside a function. You should take a look at #error if you want to report errors at compilation...
See here
5