我必须在单行中输入一次字符串,然后以最快的可能方式通过char迭代char。 我尝试了gets,fgets,fread,scanf,但是这些函数需要使用像那样的数组:
char* array = new char[100000];
fgets(array,100000,stdin);
//gets(array);
//scanf("%[^\n]s", array);
Mayby有更快的方式来读取没有数组的行吗? 我只需要使用每个char一次。 我尝试使用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
}
答案 0 :(得分:-1)
使用字符串。
#include <string>
#include <iostream>
using namespace std;
int main()
{
string str;
getline(cin, str);
str[1];
str[2];
str[3];
return 0;
}