728x90
반응형
SMALL
#include <stdio.h>
void my_gets(char *str, int size);
int main(void){
char str[7];
my_gets(str, sizeof(str));
printf("input letter : %s\n", str);
return 0;
}
void my_gets(char *str, int size){
int ch;
int i =0;
ch = getchar();
while((ch != '\n') && (i < size -1)){
str[i] = ch;
i++;
ch = getchar();
}
str[i] = '\0';
}
main() 함수
1-1. 크기가 7인 char 배열 str 선언
1-2. my_gets 함수를 호출하여 사용자로부터 입력 받은 문자열을 str에 저장. 배열의 크기는 sizeof(str)를 통해 전달
1-3. "input letter : "와 함께 사용자가 입력한 문자열 str 출력
반환문 (return) 작성 -> 프로그램이 성공적으로 실행되었음을 나타내기 위해 0을 반환
my_gets 함수
2-1. char 포인터 str(문자열을 저장할 배열)와 배열의 크기를 나타내는 int size 매개변수를 받음
2-2. 정수형 변수 ch와 배열 인덱스를 위한 변수 i를 선언. i는 0으로 초기화
2-3. getchar 함수를 사용하여 사용자로부터 한 문자(ch) 입력 받음
2-4. while 루프를 사용하여 개행 문자('\n')가 입력되거나 배열의 크기(size - 1)에 도달할 때까지 입력 받은 문자를 str에 저장. size - 1은 널 문자('\0')를 위한 공간 확보
2-5. 루프 종료 후 str의 마지막에 널 문자('\0')를 추가하여 문자열 종료를 표시
728x90
반응형
LIST
'개념 > 혼자 공부하는 C언어' 카테고리의 다른 글
chapter 11) 공백이나 제어 문자의 입력 (0) | 2024.08.10 |
---|---|
chapter 11) getchar 함수와 putchar 함수 사용 (0) | 2024.08.09 |
chapter 11) 버퍼의 내용을 지워야 하는 경우 (0) | 2024.08.07 |
chapter 11) 버퍼를 사용하는 문자 입력 (0) | 2024.08.06 |
chapter 11) 입력 문자를 아스키 코드 값으로 출력하는 프로그램 (0) | 2024.08.05 |