请教怎么把char 变量的值加到char *p的字符串后面呢
请问如何把char 变量的值加到char *p的字符串后面呢?
FILE *fp;
char c;
char *p;
fp = fopen( "c:\\test.dat ", "r ");
while(fscanf(fp, "%c ",&c)!=EOF)
{
在此处将文件中的字符一个一个的读出来,然后放到char *p的字符串中,最后把字符串输入出来。
}
// cout < <p;
fclose (fp);
我用strcat不行,因为strcat需要第二个参数是const char
还有如何把char 连到string类型字符串的后面呢?谢谢
------解决方案--------------------
打错了,中间那行不要了:
string s;
while(fscanf(fp, "%c ",&c)!=EOF)
{
s += c;
}
------解决方案--------------------
这段代码既用了FILE指针、fopen(),又用了cout、string,令人感到疑惑,到底是C还是C++?
如果是C++,建议用文件流来操作文件。
至于把char加在string后面,
string str = "aaa ";
char c = 'z ';
cout < < str + c;
就可以了。
原理我不太确定,可能类似于java中System.out.print()时,String类型后面加任何类型都转化为String类型。
FILE *fp;
char c;
char *p;
fp = fopen( "c:\\test.dat ", "r ");
while(fscanf(fp, "%c ",&c)!=EOF)
{
在此处将文件中的字符一个一个的读出来,然后放到char *p的字符串中,最后把字符串输入出来。
}
// cout < <p;
fclose (fp);
我用strcat不行,因为strcat需要第二个参数是const char
还有如何把char 连到string类型字符串的后面呢?谢谢
------解决方案--------------------
打错了,中间那行不要了:
string s;
while(fscanf(fp, "%c ",&c)!=EOF)
{
s += c;
}
------解决方案--------------------
这段代码既用了FILE指针、fopen(),又用了cout、string,令人感到疑惑,到底是C还是C++?
如果是C++,建议用文件流来操作文件。
至于把char加在string后面,
string str = "aaa ";
char c = 'z ';
cout < < str + c;
就可以了。
原理我不太确定,可能类似于java中System.out.print()时,String类型后面加任何类型都转化为String类型。