gpt4 book ai didi

关于将字符串作为函数参数传递的 C 问题

转载 作者:太空宇宙 更新时间:2023-11-04 05:04:41 26 4
gpt4 key购买 nike

我想传递一个字符串来实现这样的功能..

 long_var = get_value("long_value");
short_var = get_value("short_value");

在函数内部,我这样做了..

double get_value(char *get_type){

if (*get_type == "short_value")
{
//calculate and return
}
else if (*get_type == "long_value")
{
//calculate and return
}
}

但是,我有一个错误错误:main.c(334):类型为“flash unsigned char [11]”的函数参数 #1 与类型为“unsigned char *”的必需参数不兼容

我以为字符串只是一个char数组,我可以调用它..

此外,有没有更好的方法来做到这一点..

谢谢..

最佳答案

您将需要包含 <string.h>并更改您的代码以说

 if (!strcmp(get_type, "short_value"))

现在的情况是,您将一个字符 ( *get_type ) 与指向一个字符 ( "short_value" ) 的指针进行比较。

关于关于将字符串作为函数参数传递的 C 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6920417/

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