gpt4 book ai didi

c - 警告 : assignment makes integer from pointer without a cast as return of the function call

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

char *doRequest(char *start, char**headers, char *body){}

这是我的函数,我是这样调用的:

char *response ;
response = doRequest(strt_line, headers, body);

我收到这个警告:

warning: assignment makes integer from pointer without a cast

我该如何纠正这个问题?

最佳答案

原因几乎可以肯定是您未能以在您尝试调用它之前可见的方式声明 doRequest。添加函数原型(prototype)(首选方式)或将其定义移至调用它的函数的定义之上。

错误的方式:

int main() {
char *start, *body, **headers;
doRequest(start, headers, body);
}

char *doRequest(char *start, char**headers, char *body) {
...
}

正确的做法:

// Function prototype (argument names unnecessary but useful for ease of reading)
char *doRequest(char *start, char**headers, char *body);

int main() {
char *start, *body, **headers;
doRequest(start, headers, body);
}

char *doRequest(char *start, char**headers, char *body) {
...
}

原因是当编译器在看到函数声明之前遇到函数调用时,它假定函数的返回类型是int

关于c - 警告 : assignment makes integer from pointer without a cast as return of the function call,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18816871/

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