可以初始化/分配结构指针吗?

问题描述

假设我有以下结构和两个版本来初始化它:

#include <stdio.h>

typedef struct Car *CarPtr;
typedef struct Car {
        const char*     name;
        unsigned int    price;
} Car;

int main(void) {

    Car ford = {
        .name = "Ford F-150",.price = 25000
    };
    print_struct(&ford);

    // is this possible to do in a single assignment?
    CarPtr jeep = {
        .name = "Jeep",.price = 40000
    };
    print_struct(jeep);

}

第二个版本可以直接做吗?或者我需要做一些类似的事情:

CarPtr jeep;
jeep->name = "Jeep";
jeep->price = 40000;

或者直接初始化 CarPtr 类型的正确方法是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)