Добре, имам 5 c++ файла:
PegRTU.cpp, PegIOHandler.cpp, PegIOHandler.h, pegio.c, pegio.h (PegRTU.cpp съдържа моя main() метод).
Компилирам ги със следните команди, използвайки gcc и g++:
gcc -c pegio.c -o pegio.o
g++ -c PegIOHandler.cpp -o PegIOHandler.o -std=c++0x
g++ -c PegRTU.cpp -o PegRTU.o -std=c++0x
g++ -o pegrtu *.o -lopendnp3
Моят основен метод има безкраен do-while цикъл за наблюдение на системата и изпращане на показания към сървър. Той съдържа извикване на cout извън (преди) цикъла за печат към терминала. Моят проблем е:
Cout не отпечатва на терминала, когато стартирам програмата си. Защо?
Направих тестова програма:
#include <iostream>
int main()
{
std::cout << "TEST";
while(1)
{
}
return 0;
}
И открих, че това също не работи, отпечатва се само ако премахна безкрайния цикъл. Функционалността на програмата ми работи добре, следи и изпраща показания, но не иска да печата на терминала. Също така първо имах притеснение, че може да е свързано с многоетапното компилиране, но мисля, че вероятно е цикълът? Някакъв съвет?
Благодаря!
Корнел