C/C++ 控制台输入

  • int getc(FILE *stream); // 从流中读取字符串;

    • fgetc:从文件指针stream指向的文件中读取一个字符,读取一个字节后,光标位置后移一个字节。
    while ((c == ' ') || (c == '\t') || (c == '\n')) {
        c = getc(fp);
    }

    跳过文件的空格符、制表符以及换行符;

1. 循环获取成对整数

int a, b;
while (scanf("%d %d", &a, &b) != EOF){
    ...
}

while 循环的退出,对于:

  • (1)windows 系统:ctrl + z
  • (2)Linux 系统:ctrl + d

EOF:end of file

# define EOF (-1)

2. getline:循环逐行读取(保存为字符串)

#include 
#include 

using namespace std;

int main(int, char**){
    string line;
    while (true){
        getline(cin, line, '\n'); 
                    // 以换行为结束,允许行内有空格
        cout << line << endl;
    }
    return 0;
}

3. 字符输入

while ((c = getc(stdin)) != EOF){
    if (putc(c, stdout) == EOF)
        ...
}
if (ferror(stdin))
    ...

你可能感兴趣的:(C/C++)