0
我的輸入將被以下:C++忽略特定的字符而CIN
4 5 1 6 7I
代替尋找和與串置換,
我想那些單個值存儲在雙
但偷看,而忽略 '我'
所以
雙A = 4,B = 5,c = 6,d = 7
以下醜陋的代碼是什麼,我就
我失去了工作,幫助將不勝感激
謝謝!
char c, real[1024], img[1024];
int i = 0;
bool flag = false,
flag2 = false;
while(c = input.get())
{
if(input.peek() == ' '){
i = 0;
flag2 = true;
}
if(!flag2){
real[ i++ ] = c;
}else{
img[ i++ ] = c;
}
if(flag)
{
break;
}
while(input.peek() == 'i')
{
if(input.peek() == 'i')
{
flag = true;
i = 0;
flag2 = true;
}if(input.peek() == ' ')
{
i = 0;
flag2 = true;
}
input.ignore(1, 'i');
}
}
if(flag){
obj.doubleValueA = 0.0 ;
obj.doubleValueB = atof(real);
return input;
}else{
obj.doubleValueA = atof(real);
obj.doubleValueB = atof(img);
}
return input; // enables cin >> a >> b >> c
如果你想讀複數,有一個內置的方式:'複雜 X; cin >> x;'。然而,這要求輸入看起來像「(3,7)」,而不是「3 7i」。 –
或者用'cin >> str;'和'stoi(str)'(C11)或'atoi(str.c_str())'將每個由空格分隔的標記讀取爲一個字符串。 – ooga