gcc로 컴파일한 파일이 실행이 안됩니다.
다른 부분은 모르겠는데요..
단순히 printf로 화면에 출력하는 부분이 안됩니다.
에러가 나는 것도 아니고..
그냥 지나가버립니다.
gcc문제인가요? 쉘문제인가요?
좀 더 자세한 증상 설명이 필요할 것 같습니다.
먼저, 실행 자체가 안되는 것인지, 아님 실행은 되는데 출력만 안되는 것인지를 확인해야 됩니다.
실행은 되는데 원하는 결과를 처리 못하는 것인지( 출력 이외의 기능). 등등.. 그리고 프로그램의 처리 결과가 금방 끝나는 것인지, 아님 메모리에 계속 상주해 있으면서 계속해서 어떤 처리를 하는 것인지도 알아야 되겠는데요.
디버깅을 하시려면, strace 등을 써보시거나, fprintf(stderr, ".." ) 등의 구문을 써서 테스트해보세요
A few Good Man
화면에 출력하는 경우(표준출력)에는 라인단위 버퍼를 사용하기 때문에
버퍼가 가득 차거나 뉴라인 문자를 만나는 경우에 버퍼에 있는 내용이
한꺼번에 출력됩니다.
printf("1");
sleep(1);
printf("2\n");
이 경우에는 1 이 출력되고 1초 후에 2가 출력되는 것이 아니라
1초 후에 1과 2가 동시에 출력됩니다.
참고하기기 바랍니다.
정확한 답변이 필요할 경우에는 정확한 정보를 알려주세요.
파일에 출력하는 건 아무 문제가 없습니다. 다시 보니깐 프로그램을 잘못짠것 같습니다. 제가 어떤 부분을 잘못했는지..좀... 출력하면 용이라는 단어만..뜨고.. 프로그램이 종료해 버립니다.
#include <iostream>
using namespace std;
typedef struct { char food_name[20]; float food_weight; int calorie; }FOOD;
int main() { cout << "gon"; cout << "sex"; FOOD snack = {"첫달용", 2.3,350};
cout <<"sss"; cout << "이릉은"<< snack.food_name; return 0; }
Visual C++ 하고 g++ 에서 테스트 해보았는데
두 군데 다 잘 됩니다.
gcc 버전은 2.96 이구요.
제가 언뜻 보기에도 별 문제 없어보이는데요.
다시 컴파일 해보세요. 별 도움을 못 드려서 죄송합니다. 꾸벅~!
음
FOOD snack = {"첫달용", 2.3,350};
요녀석이 좀 문제일 수도 있군요.
확실함을 위해 FOOD snack ={"첫달용\0",2.3,350};
이렇게 해주심이 -_-
좋을듯 합니다.
Neogeo - Future is Now.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
제목과 내용이 일치하지 않은데..^^
좀 더 자세한 증상 설명이 필요할 것 같습니다.
먼저, 실행 자체가 안되는 것인지, 아님 실행은 되는데 출력만 안되는 것인지를 확인해야 됩니다.
실행은 되는데 원하는 결과를 처리 못하는 것인지( 출력 이외의 기능). 등등..
그리고 프로그램의 처리 결과가 금방 끝나는 것인지, 아님 메모리에 계속 상주해 있으면서 계속해서 어떤 처리를 하는 것인지도 알아야 되겠는데요.
디버깅을 하시려면, strace 등을 써보시거나, fprintf(stderr, ".." ) 등의 구문을 써서 테스트해보세요
A few Good Man
좀 더 자세한 정보가 필요하지만.
화면에 출력하는 경우(표준출력)에는 라인단위 버퍼를 사용하기 때문에
버퍼가 가득 차거나 뉴라인 문자를 만나는 경우에 버퍼에 있는 내용이
한꺼번에 출력됩니다.
printf("1");
sleep(1);
printf("2\n");
이 경우에는 1 이 출력되고 1초 후에 2가 출력되는 것이 아니라
1초 후에 1과 2가 동시에 출력됩니다.
참고하기기 바랍니다.
정확한 답변이 필요할 경우에는 정확한 정보를 알려주세요.
방금 확인해봤는데요.
파일에 출력하는 건 아무 문제가 없습니다.
다시 보니깐 프로그램을 잘못짠것 같습니다.
제가 어떤 부분을 잘못했는지..좀...
출력하면 용이라는 단어만..뜨고..
프로그램이 종료해 버립니다.
#include <iostream>
using namespace std;
typedef struct
{
char food_name[20];
float food_weight;
int calorie;
}FOOD;
int main()
{
cout << "gon";
cout << "sex";
FOOD snack = {"첫달용", 2.3,350};
cout <<"sss";
cout << "이릉은"<< snack.food_name;
return 0;
}
되는데요.
Visual C++ 하고 g++ 에서 테스트 해보았는데
두 군데 다 잘 됩니다.
gcc 버전은 2.96 이구요.
제가 언뜻 보기에도 별 문제 없어보이는데요.
다시 컴파일 해보세요. 별 도움을 못 드려서 죄송합니다. 꾸벅~!
음 FOOD snack = {"첫달용", 2.3,350};
음
FOOD snack = {"첫달용", 2.3,350};
요녀석이 좀 문제일 수도 있군요.
확실함을 위해 FOOD snack ={"첫달용\0",2.3,350};
이렇게 해주심이 -_-
좋을듯 합니다.
Neogeo - Future is Now.
댓글 달기