✅ 목표 (Goal)

간단한 echo 봇을 만들어 보자.

✅ echo bot이란?

아래와 같이 에코되는 프로그램을 만들어보자.

HAL9000 $|
HAL9000 $ adfasdfasdf // 이렇게 입력하면
HAL9000 $ adfasdfasdf //고대로 나온다.

✅ echo bot 만들기

#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>
#include <stdbool.h>

#define STR_QUIT ("quit")
#define STR_HI ("hi")
#define STR_GET_TEMP ("get temp")

int main() {
    char str[32] = {0,};

    while (true) {
        printf("명령어를 입력하세요. :");
        scanf("%s", str);
        //printf("%s\\r\\n", str);
        if (strcmp(str, STR_QUIT)==0) {
            printf("프로그램을 종료합니다.\\r\\n");
            exit(0);
        }
        //else if (strcmp(str, STR_HI)==0) {
        //    printf("안녕.\\r\\n");
        //}

        // 입력받은 문자열 echo 해주기
        // 
    }
    return 0;
}

#pragma warning(disable: 4996)
//출처: <https://bymakers.tistory.com/6> [bymakers]

#include <stdio.h>
#include <string.h>

int main()
{
	enum {
		OFF,
		INIT,
		READY,
		RUN,
		STOP,
	};

	char vect[10];

	int state = OFF;

	while (1)
	{
		if (state == READY || state == OFF) {
			printf("HAL9000:~$ ");
			scanf("%s", vect);

			if (!strcmp(vect, "BYE")) {
				break;
			}
		}

		if (!strcmp(vect, "ON") && state == OFF) {
			printf("ONONONON\\n");
			state = INIT;
		}
		else if (state == INIT) {
			printf("INIT\\n");
			state = READY;
		}

	}

	return 0;
}

Untitled

✅ 위와 동일하게 echobot을 짜는데 fgets 함수를 적용해보자.

fget 함수 및 예제