В настоящее время я переписываю интерпретатор, над которым я работал в C. Я привык к языкам более высокого уровня, таким как C #, так что C сейчас немного смущает меня.
Я написал функцию, которая обнаруживает текущую операционную систему и сохраняет либо «WINDOWS», «LINUX» или «MAC» в массиве символов, но мне нужно передать это значение функции в другом файле.Код выглядит следующим образом:
//main.c
#include <stdio.h>
#include "interpreter.h"
#define OS_STR_MAX 8
extern void interpreterInit(char currentOS[]);
int main(int argc, char const *argv[]){
char currentOperatingSystem[OS_STR_MAX];
...
interpreterInit(currentOperatingSystem);
return 0;
}
Проблема в том, что когда я передаю значение функции, все, что сохраняется, это символы ANSII.Я искал часы и не могу найти решение.
//interpreter.h
#include <stdio.h>
void interpreterInit(char currentOS[]){
...
}
Любая помощь будет принята с благодарностью.