gpt4 book ai didi

字符常量对于它的类型来说太长

转载 作者:太空宇宙 更新时间:2023-11-04 08:23:31 25 4
gpt4 key购买 nike

我想尝试制作一个基于文本的游戏,但是对于 item2 - item6 来说,!multi-character character constant。字符常量对于它的类型来说太长了。从“int”到“char”的隐式转换会将值从 175174007 更改为 103。

#include <stdio.h>

int main()
{
int monster,lion;
char action,item1,item2,item3,item4,item5,item6;

action = 0;
monster = 5;
lion = 3;
item1 = 'lamp';
item2 = 'axe';
item3 = 'nothing';
item4 = 'nothing';
item5 = 'nothing';
item6 = 'nothing';

最佳答案

您正在将多字节字符常量分配给 char 类型,这是您收到警告的原因(具有实现定义的行为)。

您可以使用指针数组来定义它们:

char *items[] = {"lamp","axe","nothing","nothing","nothing","nothing"};

并使用,例如:

printf("%s", items[1]); //would print "axe"

同样,为了进行比较,您可以使用 strcmp()(而不是 ==)。

关于字符常量对于它的类型来说太长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32264839/

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