void value not ignored as it ought to be int login_result = do_login(sockfd, msg);
时间: 2024-03-18 09:40:24 浏览: 49
这个错误通常是因为在一个表达式中使用了一个函数调用,但是没有使用该函数返回的值。在你的例子中,`do_login` 函数的返回值被用于一个赋值语句中,但是这个值没有被用于任何其他地方。要解决这个错误,你需要确定是否真的需要使用 `do_login` 函数的返回值,如果不需要,你可以将代码修改为如下所示:
```
do_login(sockfd, msg);
```
如果你确实需要使用返回值,你需要将其存储在一个变量中,并且在后续的代码中使用该变量。例如:
```
int login_result = do_login(sockfd, msg);
// 使用 login_result 变量进行后续操作
```
这样就不会出现上述错误了。原因是在 C 语言中,如果一个函数返回了一个值,但是这个值没有被使用,编译器会产生警告,因为这可能会导致程序出现意外的行为。因此,为了保证程序的正确性,我们应该始终使用函数的返回值,或者将其忽略。
相关问题
void value not ignored as it ought to be if(do_login(sockfd,msg) == 1)
这个错误通常是因为在一个表达式中使用了一个函数调用,但是没有使用该函数返回的值。在你的例子中,`do_login` 函数的返回值被用于一个条件语句中,但是这个值没有被用于任何其他地方。要解决这个错误,你需要确定是否真的需要使用 `do_login` 函数的返回值,如果不需要,你可以将代码修改为如下所示:
```
do_login(sockfd,msg);
```
如果你确实需要使用返回值,你需要将其存储在一个变量中,例如:
```
int login_result = do_login(sockfd,msg);
if(login_result == 1) {
// do something
}
```
void value not ignored as it ought to be
"void值没有被忽略,就像它应该的那样"。这是一种编程错误,表明程序试图对void类型的值进行操作或赋值,但是void类型的值不能进行这样的操作。一般来说,void类型的值只能用于函数的返回类型,表示该函数不返回任何值。
阅读全文