gpt4 book ai didi

c - 变量返回地址错误

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

我们应该编写一个函数来返回字符串 str 中 ch 第一次出现的地址。我写了下面的代码,它运行并且似乎返回了可能是正确的数字(我为字符串中的 5 个字符调用了该函数 5 次,返回值以 1 个字节分隔。)但是,返回语句中的&符号带有悬停文本的红色下划线,“返回值类型与函数类型不匹配。”如果出现错误,我不明白代码是如何构建和运行的。

#include <stdio.h>
#include <string.h>

int mystrchr (char *str, char ch){
int i;
for(i=0;i<strlen(str);i++){
if(str[i]==ch)
{
//printf("%c\n",str[i]);
return &str[i];
}
}
}

最佳答案

让我告诉你原因:根据您定义的函数 int mystrchr (char *str, char ch){},返回类型为 int,但实际值为 &str[i]; ,你代码中的类型是char *

所以有一个警告..

关于c - 变量返回地址错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33729562/

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