C++ char const char *
问题描述:
我需要将字符数组中的字符转换为const char *
以便使用fstream将其打印到文件中。我不确定如何去做。我试过把单个字符串放入一个字符串中,然后使用c_str()
,但那不起作用。C++ char const char *
答
嗯......如果你有一个字符数组,当传递给函数时已经衰减到char *
。
如果你只需要一个字:
char array[128]; // whatever - you want to extract the char from this
char s[] = { array[64], 0 };
然后用s
现在可衰变成char *
。
编辑:为了使用fstream的将它打印到文件
好吧,那就不必将其转换为
: D'哦,我刚读这合适的C字符串。
operator<<
知道它的工作,并且它也过载了char
。
答
如果你想要写一个字,只使用operator<<
:
char arr[256] = "...";
fstream f(...);
f << arr[2];
你并不需要的字符转换为C字符串。
该代码将很有用? – 2013-02-10 08:24:16
等一下,什么?您当然不需要将字符数组中的字符转换为'const char *'以便使用'fstream'将其打印到文件中。请[分享代码](http://sscce.org/)到目前为止,让我们知道你看到了什么编译器错误,让你相信这样的事情。 – Johnsyweb 2013-02-10 08:25:27