我必须在单行中输入一次字符串,然后以最快的方式逐个字符迭代。我尝试了get、fgets、fread、scanf,但这些函数需要使用类似的数组:
char* array = new char[100000];
fgets(array,100000,stdin);
//gets(array);
//scanf("%[^n]s", array);
也许有一种更快的方法可以读取例如没有数组的行?我只需要使用每个字符一次。我试着用fgetc,但它不起作用。
char c;
while((c=fgetc(stdin))!='n'){
if(c==' ') c=fgetc(stdin); // if char is a space go to next char from input
//code
}
使用字符串。
#include <string>
#include <iostream>
using namespace std;
int main()
{
string str;
getline(cin, str);
str[1];
str[2];
str[3];
return 0;
}