«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Archives
Today
Total
관리 메뉴

Code Run

행단위로 문자열을 입력받기 본문

코딩 tip

행단위로 문자열을 입력받기

comkiwer 2018. 5. 2. 12:14

1. gets함수를 이용하기 : 

    준비된 문자열 길이보다 입력되는 문자열이 더 긴 경우 다른 메모리 공간(무엇이 저장되어 있는지 알수 없는)을 침범할 수 있다.

   char str[210];

   gets(str);


2. fgets함수를 이용하기 : 

   char str[210];

   fgets(str, 210, stdin); /// 문자열을 209개까지 입력받고 마지막에 '\0'문자을 넣어 준다. 단 '\n'이 함께 입력된다.

                              /// 행바꿈 문자('\n', '\r')가 필요없는 경우(대부분의 경우가 그렇다.) 제거해 주어야 한다.


3. c++ 인 경우 getline함수와 char배열을 사용하기 :

   char str[210];

   cin.getline(str, 210);  /// 문자열을 209개까지 입력받고 마지막에 '\0'문자을 넣어 준다. '\n'이 입력되지 않는다.


4. c++ 인 경우 getline함수와 string 변수를 사용하기 :

   string str;

   getline(cin, str);    /// 문자열 길이에 관계없이 입력받는다. '\n'이 입력되지 않는다.