#include<string>如fasdfsdsafsafsgsggsagfsagdgsaf一次性全部输入到一个串里怎么弄?... #include<string>

fasdfsd
saf saf sgsg gsa
gf sag dg
saf
一次性全部输入到一个串里怎么弄?

换行符通常是默认的输入结束标志,现在要把它作为字符存入字符串,就得另外约定一个结束符,这里设为'#'。有了这个约定,就有很多办法可以解决题面问题,下面提供一种:

//#include "stdafx.h"//If the vc++6.0, with this line.
#include <string>
#include <iostream>
using namespace std;
int main(void){
    string s;
    char x;
    while((x=cin.get())!='#')//输入#结束,其他字符继续
        s+=x;
    cout << s << endl;
    return 0;
}
#include "iostream"
using namespace std;
int main()
{
string tt;
int num;
char *cTemp;
cTemp = new char[100];
printf("enter the number of char:\n");
scanf("%d", &num);

fflush(stdin);
printf("enter char:\n");

if (num<1||num>100)
{
printf("error number!!\n");
return 0;
}

for(int i=0; i<num; i++)
{
scanf("%c", cTemp+i);
// cTemp++;
}

printf("你输入的是:\n");
for(i=0; i<num; i++)
{
printf("%c", *(cTemp+i));
tt.append(cTemp+i);
}

printf("\n");
return 0;
}

自己手写的,你参考一下吧,可以一个个append到string中