printf와 scanf함수를 이용해도 문자열의 입출력이 충분히 가능합니다.
하지만, scanf함수는 공백이 포함된 형태의 문자열을 입력 받는데 제한이 있습니다.
문자열 입력 함수는 이러한 제한이 없습니다.
문자열 출력 함수 : puts, fputs
모니터로 하나의 문자열을 출력할 때 일반적으로 사용하는 두 함수
#include <stdio.h>
int puts(const char * s);
int fputs(const char * s, FILE * stream);
// 성공 시 음수가 아닌 값을, 실패 시 EOF 반환
puts함수는 출력의 대상이 stdout으로 결정되어 있지만,
fputs 함수는 두 번째 인자를 통해서 출력의 대상을 결정할 수 있습니다.
#include <stdio.h>
void main()
{
char str[] = { 's','i','p','l','l','e' };
char * ptr = str;
printf("1. puts test ------\n");
puts(str);
puts("So simple String");
printf("2. puts test -----\n");
fputs(str, stdout); printf("\n");
fputs("So Simple String", stdout); printf("\n");
printf("3. end of main -----\n");
}
puts 함수가 호출되면 문자열 출력 후 자동으로 개행이 이뤄지지만, fputs함수가 호출되면 문자열 출력 후 자동으로 개행되지 않습니다.
'4. 프로그래밍 기초 > 4_2 C' 카테고리의 다른 글
[열혈 C프로그래밍] gets와 fgets - 문자열 입력 방법 (0) | 2020.05.16 |
---|---|
[열혈 C프로그래밍] fflush() - 출력 버퍼를 비우는 방법 (0) | 2020.05.16 |
[열혈 C프로그래밍] 도전 프로그래밍1 정답 (0) | 2018.12.29 |
[열혈 C프로그래밍] 스트림과 문자 입출력 함수 연습문제 (0) | 2018.12.22 |
[열혈 C프로그래밍] 함수 포인터와 void 포인터 연습문제 (0) | 2018.12.22 |