gpt4 book ai didi

c - 尝试打印封装在另一个结构中的结构的数据类型

转载 作者:行者123 更新时间:2023-11-30 19:21:05 25 4
gpt4 key购买 nike

我只是想知道是否有人知道如何解决我在尝试打印封装在另一个结构中的结构的数据类型“char []”的值时遇到的问题。任何建议将不胜感激,因为我已经花了几个小时试图解决这个问题。提前致谢,我收到的错误是警告:(格式“%s”需要“char *”类型的参数,但参数 2 的类型为“int”)

  struct food_stuff
{
char name [30];
int calories;
int foodtype;
int price;
};

typedef enum food_groups food_groups;

struct food_plan_item
{
food_stuff fs;
int qty;
};

typedef struct food_plan_item food_plan_item;


void print_food_line_items(food_plan_item *fpi)
{

for(int i =0 ; i<fpi_count;i++)
{
printf("%s", *(fpi+fpi_count)->fs.name);
}

}

最佳答案

该行中有一个额外的取消引用

printf("%s", *(fpi+fpi_count)->fs.name);

fpi->fs.name 返回一个 char * 指针; *fpi->fs.name 返回数组的第一个字符,它是一个值(转换为 int)而不是指针。

关于c - 尝试打印封装在另一个结构中的结构的数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20575253/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com