euzl / Algorithm

ㅇㅏㄹㄱㅗㄹㅣㅈㅡㅁ
0 stars 0 forks source link

~scanf(), getline(cin, s) // EOF까지 입력받기 #4

Open euzl opened 5 years ago

euzl commented 5 years ago
char a[10000];
for(;~scanf("%s", a); i++);

*int scanf(char const const _Format, ...);**

C/C++은 조건문에서 0 이 아니면 참이니까, 0은 거짓이여서 종료됩니다.

요약) EOF까지 입력받다가 종료.

[출처]https://www.acmicpc.net/board/view/17798

euzl commented 4 years ago

백준 11721... 이렇게 간결하게 되다니

#include<cstdio>
char s[11];
int main() {
    while (~scanf("%10s", s))puts(s);
    return 0;
}
euzl commented 3 years ago

getline 사용법

#include <iostream> // cin
#include <string> // getline
using namespace std;

string s;
fflush(stdin); // 버퍼 비우기
getline(cin, s); // 한 줄씩 입력받기 (공백 포함!!)
if (s.length() == 0) break; // 입력이 끝나면 멈추기

scanf에서 개행문자까지 입력받기

char s[101];
scanf("%[^\n]s", s); // '\n' 제외하고 입력받겠다는 뜻
euzl commented 3 years ago
int N;
while(scanf("%1d", &N) != EOF)

이렇게도 가능 ~