표준출력함수

 표준출력함수

 사용법

 의미

 putchar

 putchar(65);, putchar('a');

 단일문자 출력함수이다.

 putc

 putc('a', stdout);

 이것도 단일문자 출력함수이다. putchar을 

이걸로만들었다.

 puts

 puts("Hello World!");

 자동으로 \n이 들어가있다.

문자열이 출력된다.

 printf

 printf("Hello World!");

 이때까지 봤다싶이 문자열 출력함수인데 서식문자를 쓸수있다.


여기서 putchar(65)는 출력값이 A가나온다. 이유↓

C언어에는 아스키코드라는게 존재하는데 문자마다 아스키코드값이 있는데 A의아스키코드값이 65입니다.

Tip:​stdout은 표준출력을 의미합니다.

예제↓ 

1
2
3
4
5
6
7
8
#include<stdio.h>
int main(void){
    putchar(65);
    putc('A', stdout);
    printf("\n");
    puts("Hello World!");
    return 0;
}
cs


결과는

AA

Hello World!

이렇게 나오게됩니다.


표준입력함수

표준입력함수

 사용법

 의미

 getchar

 getchar();

 문자하나를 입력받는다.

 getc

 getc(stdin);

 위와 같지만 getchar을 이걸로 만들었다.

 getch

 getch();

 위와 같다.

 scanf

 scanf("%서식문자", &변수);

 서식문자에따라 정수형 실수형 문자까지 입력받을수있다.

※scanf에 &은 변수의 주소를 의미한다. 변수의주소에 받은걸 넣는다고 보면됩니다.

Tip: scanf는 문자하고 엔터까지 쳐야끝나지만 다른함수들은 문자만치면 입력이끝난다.

소스코드↓

1
2
3
4
5
6
7
8
9
#include<stdio.h>
int main(void){
    int i = 0;
    i = getchar();
    i = getc(stdin);
    i = getch();
    scanf("%c"&i);
    return 0;
}
cs

결과는

i에 사용자가 입력한값이 들어갑니다.


기타처리

상황:단일문자를 입력받는데 사람이 잘못하고 a를써야하는데 ab를 쓰면?

b가 저장되어 버립니다.

 a

 b


이러면 a가대입되는데 버퍼라는곳에 b가남아서 b를 써야합니다. 그래서 썼는데 i값이 b가되어버립니다.

버퍼를 비울때

 함수

 사용법

 의미

 rewind

 rewind(stdin)

표준입출력의 버퍼를비운다.

소스코드↓

1
2
3
4
5
6
7
#include<stdio.h>
int main(void){
    int i = 0;
    i = getchar();
    rewind(stdin);
    return 0;
}
cs

문자만 입력해야하는데 Enter까지 썼을때

getchar을 사용

소스코드↓

1
2
3
4
5
6
7
#include<stdio.h>
int main(void){
    int i = 0;
    i = getchar(); // i
    getchar(); //엔터값을 받음
    return 0;
}
cs

여기까지 블로그 포스팅을 마치도록 하겠습니다.


입출력관련 -끝-



'C언어' 카테고리의 다른 글

함수  (0) 2018.01.12
switch문  (0) 2018.01.12
반복문  (0) 2018.01.12
if 조건문  (1) 2017.12.19
연산자  (0) 2017.12.18

+ Recent posts