我需要将字符数组中的字符转换为 aconst char *
以便使用 fstream 将其打印到文件中。我不确定该怎么做。我尝试将单个字符放入字符串中,然后使用c_str()
,但这不起作用..
问问题
859 次
2 回答
2
如果你想写一个字符,只需使用operator<<
:
char arr[256] = "...";
fstream f(...);
f << arr[2];
您不需要将字符转换为 C 字符串。
于 2013-02-10T08:25:28.330 回答
1
char *
嗯...如果你有一个字符数组,当传递给一个函数时它已经衰减了。
如果您只需要一个字符:
char array[128]; // whatever - you want to extract the char from this
char s[] = { array[64], 0 };
然后使用s
which now 可以衰减为char *
.
编辑: D'oh,我刚读到这个:
为了使用 fstream 将其打印到文件中
好吧,那就不要费心将它转换为正确的 C 字符串。operator<<
知道它的工作,它也超载char
了。
于 2013-02-10T08:22:57.710 回答