#include <qapplication.h>
#include <qmainwindow.h>
#include "mainwindow.hpp"
#include "../RegisterOfErrors.hpp"
#include <clocale>
extern std::string* Error::DescriptionOfErrors;
int main (int argc, char *argv[])
{
std::locale::global(std::locale("en_US"));
setlocale(LC_ALL, "en_US");
FILE *conf = fopen("dupa.txt", "r");
float dupa;
fscanf(conf, "%f", &dupa);
printf("%f\n", dupa);
Error::setDescriptionOfErrors();
QApplication app(argc, argv);
MainWindow window;
window.show();
return app.exec();
}
기본 로캘은 "es_ES"이므로 ","는 소수점입니다. 내 코드입니다. "dupa.txt"파일의 숫자는 "1.0344"이며 제대로 작동합니다. 그러나, 코드에서 더 깊은 나는 g ++에서 "-ldoublefann"으로 링크되고 파일에서 일부 데이터를 읽는 fann 라이브러리를 사용하고 있으며이 라이브러리는 ","에서만 작동합니다.setlocale()이 연결된 라이브러리에서 작동하지 않는 것 같습니다
왜이 질문에 대해 하향 투표를합니까? –