注册 登录
编程论坛 C++教室

一个字符数组,输出问题,请大家帮帮忙看一下,谢谢了~~~

瑞锋online 发布于 2019-03-25 12:16, 1623 次点击
#include<iostream>
#include<fstream>
using namespace std;
class Data
{
public:
    char c[10];
};
int main()
{
    Data data;
    ofstream file;
    file.open("a.txt");
    cout<<"请输入字符:";
    cin>>data.c;
    file.write((char *)(&data),sizeof(data));
    file.close();
    return 0;
}
输入:abc
最后出现的结果为:abc烫烫烫??
但是直接在类里边定义 char c[10]的话,就不会出现乱码的状况,请问这是什么原因啊??
2 回复
#2
rjsp2019-03-25 12:27
file.write( data.c, strlen(data.c) );
#3
朱煜宸2019-04-01 21:41
因为char只能定义字符。
1