年年月月日日无bug 2023-04-01 14:11 采纳率: 54.5%
浏览 228

c++报错array must be initialized with a brace-enclosed initializer

#include<iostream>
using namespace std;
int main(){
    struct st{
        int type; //目录为1,文件为2
        char fn[20];
        struct st *child[20];
        int chpos;
        struct st *parent;
    };
    st *p;
    struct st files[1024];
    st gen = {1,"c:",NULL,0,NULL};
    p = &gen;
    int pos = 0;
    files[pos] = gen;pos++;
    cout << "请选择 1.创建 2.删除 3.进入 4.回到根目录" <<endl;
    int ch;
    cin >> ch;
    switch(ch){
        case 1:
            cout << "请输入文件名" << endl;
            char fn1[20];
            cin >> fn1;
            cout << "请输入文件类型" << endl;
            int t;
            cin >> t;
            st newf = {t,fn1,NULL,0,NULL}; 这行报错
            files[pos] = newf;
            pos++;
    }
}

把fn1和fn的类型改为string就不报错了,不知道为什么

  • 写回答

1条回答 默认 最新

  • 赵4老师 2023-04-19 11:13
    关注

    “变量赋值”和“变量初始化”不是一回事!
    “变量赋值”发生在运行期,其写法遵循赋值语法规定。
    “变量初始化”发生在编译期或运行期,其写法遵循初始化列表语法规定。

    评论

报告相同问题?

问题事件

  • 创建了问题 4月1日

悬赏问题

  • ¥15 elementui上传结合oss接口断点续传,现在只差停止上传和继续上传,各大精英看下
  • ¥100 单片机hardfaulr
  • ¥20 手机截图相片分辨率降低一半
  • ¥50 求一段sql语句,遇到小难题了,可以50米解决
  • ¥15 速求,对多种商品的购买力优化问题(用遗传算法、枚举法、粒子群算法、模拟退火算法等方法求解)
  • ¥100 速求!商品购买力最优化问题(用遗传算法求解,给出python代码)
  • ¥15 虚拟机检测,可以是封装好的DLL,可付费
  • ¥15 kafka无法正常启动(只启动了一瞬间会然后挂了)
  • ¥15 Workbench中材料库无法更新,如何解决?
  • ¥20 如何推断此服务器配置