getchar 

    //표준 입력(stdin)에서 문자(char)를 가져온다.
    //리턴 값을 통해 해당 문자를 반환한다.
    printf("%c \n",getchar());
    // 여럿을 입력해도 문자 하나만 반환한다.

gets

    char str[100];
    gets(str);
    printf("%s \n",str);
    // 문자 열 을 가져온다. 리턴 값을 통해 반환하는 것도 문자열이다.
    // 띄워쓰기를 받을 수 있다! 사용시 충분한 크기의 str 배열을 만들어서 버퍼 오버플로우를 방지해야 한다. 

성공적으로 읽어 들였다면 str 을 리턴한다. 실패했다면(아무 문자도 못 읽었거나, 오류이면) NULL을 리턴한다.

getche

    getche();
    // 문자 하나를 받는다. getchar와 달리 엔터를 누르지 않아도.. 해당 문자를 누르는 즉시 작동한다.
    // 문자를 입력하면 화면에 반환해주기 때문에 echo (메아리) 라는 의미로 e가 붙었다.

그리고 이 함수는 버퍼를 거치지 않는다.

getch

getch();

// 누른 즉시 문자 하나를 받는다. getche와 크게 다르지 않지만 echo. 즉 화면에 반환해주지 않는 차이가 있긴 하다.

이 함수도 버퍼를 거치지 않는다.

putchar
표준 출력에 문자를 쓴다.

    //char ch = 'z';
    //putchar(ch);
    // 표준 출력에 문자를 쓴다. 그러니까 그냥 문자 하나를 출력한다.
    // 내부적으로 전달된 문자는 int형으로 변환된다. 리턴 값은 오류가 없다면 사용된 문자. 아니면 EOF

putc

    char ch ='q';
    putc(ch,stdout);

// 스트림(버퍼)에 문자를 쓴다. putchar와 비슷하지만 stdout을 안써도된다.

puts

    char str[10] = "azsdf";
    puts(str);
    // 표준 출력에 문자열을 쓴다. puts 함수는 str 이 가리키는 주소 부터 널 종료 문자 ('\0') 에 도달할 때 까지
    // 표준 출력에 문자를 복사하지만 마지막 널 문자는 표준 출력에 복사되지 않는다. 

실패하면 EOF. 성공하면 그 문자열을 그대로 리턴해준다.


Posted by GENESIS8

댓글을 달아 주세요