• 카테고리

    질문 & 답변
  • 세부 분야

    반도체

  • 해결 여부

    해결됨

코드 재실행

23.02.09 18:55 작성 조회수 173

0

안녕하세요, 맛비님.

Lab 4 Hello world print 진행 중 궁금한 것이 있습니다.

Hello world 프린트는 잘 됩니다.

그런데 무한루프 while(1) 도는 중에 (terminal에 계속 hello world 출력 중) 소스 코드를 수정하고 다시 re build 를 하여 run하려 할 때 에러가 납니다.

혹시

1. 코드가 계속 도는 중에 이렇게 re build를 하면 안되는 것인지

2. 무한루프 도는 중에 중간에 강제로 stop할 방법이 있는지

여쭈어봐도 될까요?

감사합니다.

답변 1

답변을 작성해보세요.

0

안녕하세요 :)

A1. 음.. 실행상태에서, re build 가 가능해보이는데요. 어떻게 하셨는지 캡쳐로 설명 가능할까요? 글만 보아서는 잘 모르겠어요.

A2. 다음 코드를 참고해보세요. quit 를 입력하시면 무한 while loop 이 탈출됩니다. 이 코드를 응용하면 될 것 같아요.

#include <stdio.h>

#include <string.h>

#define BUFSIZE 100

int main(void) {

char buf[BUFSIZE];

while (1) {

printf("Enter a string (or 'quit' to exit): ");

fflush(stdout);

if (fgets(buf, BUFSIZE, stdin) != NULL) {

buf[strcspn(buf, "\n")] = 0;

if (strcmp(buf, "quit") == 0) {

break;

}

printf("You entered: %s\n", buf);

}

}

printf("Exiting program...\n");

return 0;

}

 

#