我试图将char [256]写入文本文件。以下是我目前的工作:尝试将char []写入文本文件
fstream ofs;
ofs.open("c:\\myURL.txt");
ofs.write((char*)testDest,256);
ofs.close();
它仍然不起作用。
这里是错误:
错误C2440: '类型转换':不能从转换'到 '字符*'
更新:
到目前为止,这是我进步的尝试,该代码可以编译,但是在运行时,我的程序突然终止。
ofstream stream;
CBar *a;
switch(uMessage) {
case WM_PAINT:
return bar->OnPaint();
case WM_ERASEBKGND:
return 1;
case WM_LBUTTONDOWN: //wira
if (!bar->OnClick(wParam, lParam)) {
stream.open("C:\\myURL.txt");
stream << a->testDest << endl; // if I replace `a->testDest` with "testword" string, my prgrom does not terminated. Why?
return 0;
}
break;
什么是文件与“笨重的写功能”? – anno 2010-09-28 10:38:30
嗯,需要'(char *)'强制转换,以及多余的长度规范(这是一个C++数组,长度是固定的)。 – rubenvb 2010-09-28 10:53:41
流操作失败不应导致程序终止(除非显式调用'ios :: exceptions()'请求某些失败报告为异常)。我猜想一个糟糕的内存访问涉及到某个地方。 – 2010-09-29 00:34:36