48 23 E:\AAsoft\suanfa\exp1\SqList.cpp [Error] return-statement with a value, in function returning 'void' [-fpermissive]
时间: 2023-07-21 09:28:37 浏览: 102
这个错误是因为你的函数声明返回类型为void,但是在函数内部使用了return语句返回了一个值。在C++中,如果函数声明返回类型为void,则不应该在函数内部使用return语句返回值。如果需要在函数内部返回值,则应该将函数声明的返回类型修改为对应的类型,例如int、double等。
例如,如果你的函数需要返回int类型的值,则函数声明应该修改为:
```cpp
int myFunction(int a, int b) {
// 函数体
return a + b;
}
```
如果函数不需要返回值,则函数声明应该使用void类型,函数内部不需要使用return语句:
```cpp
void myFunction(int a, int b) {
// 函数体
// 不需要返回值
}
```
在你的代码中,如果你确实需要在函数内部返回一个值,那么你需要修改函数声明的返回类型为对应类型,例如:
```cpp
int myFunction(int a, int b) {
// 函数体
return a + b;
}
```
如果你不需要在函数内部返回值,则需要将函数内部的return语句删除或注释掉,例如:
```cpp
void myFunction(int a, int b) {
// 函数体
// 不需要返回值
// return 0; // 注释掉或删除这行代码
}
```
注意,修改完函数声明的返回类型之后,你需要在函数内部使用return语句返回一个对应类型的值,否则会导致编译错误。
相关问题
36 6 E:\AAsoft\suanfa\exp3\exp3-4\SqQueue.cpp [Error] in passing argument 2 of 'bool EnQueue(SqQueue*&, int&)'
根据您提供的信息,看起来是在调用函数 `EnQueue` 时出现了错误。具体来说,第二个参数的类型与函数声明不匹配。可能是函数声明中该参数的类型与实际传入的参数类型不同,或者该参数的地址没有正确传递。
请检查函数 `EnQueue` 的声明和调用,确保它们的参数类型匹配,并且所有参数的地址都被正确传递。如果问题仍然存在,请提供更多的代码和错误信息,以便更好地理解问题的本质。
165 14 E:\AAsoft\suanfa\exp6\MGraph.cpp [Error] cannot convert 'ALGraph' to 'ALGraph*' for argument '1' to 'void DispAdj(ALGraph*)'
这个错误提示看起来是函数参数类型不匹配导致的。你调用了 `DispAdj` 函数,传入的参数类型是 `ALGraph`,但是函数定义中参数类型是 `ALGraph*`,两者不匹配。你需要把参数类型改成指针类型,或者在传入参数时取地址符 `&` 来将 `ALGraph` 类型的变量转换为指针类型。
示例代码:
```
// 函数定义
void DispAdj(ALGraph* G) {
// 函数实现
}
// 函数调用
ALGraph G;
DispAdj(&G); // 传入 G 的地址
```
阅读全文
相关推荐













