【发布时间】:2020-10-16 00:02:06
【问题描述】:
typedef struct inventory
{
char *name;
int quantity;
} invent;
int main()
{
invent *one=malloc(sizeof(invent));
scanf("%s", one->name);
...
}
scanf() 不起作用。 还有其他方法吗? 我想如何在 char* 中输入值。
【问题讨论】:
-
我试过
invent.name=malloc(256);,但它不起作用。(错误:预期标识符或'(') -
invent不是对象,而是类型。你会想要one->name=malloc(256);。 (当然还要检查返回的指针对于两个malloc调用是否都不是NULL。 -
我明白了。谢谢!
-
你想在哪里存储字符串?
标签: c char-pointer