struct LineData { char line[MAX_LINE_LEN]; int last_int; int line_num; }; int cmp(const void *a, const void *b) { const struct LineData *la = (const struct LineData *)a; const struct LineData *lb = (const struct LineData *)b; return la->list_int - lb->last_int; }报错了
时间: 2024-01-22 15:01:38 浏览: 141
这段代码中的错误在于 `cmp` 函数的实现。在 `cmp` 函数中,你使用了 `la->list_int` 和 `lb->last_int` 进行比较,但是在结构体 `LineData` 中并没有定义 `list_int` 成员,应该改为 `la->last_int` 和 `lb->last_int`。
正确的代码应该是:
```c++
struct LineData {
char line[MAX_LINE_LEN];
int last_int;
int line_num;
};
int cmp(const void *a, const void *b) {
const struct LineData *la = (const struct LineData *)a;
const struct LineData *lb = (const struct LineData *)b;
return la->last_int - lb->last_int;
}
```
另外,还需要注意的是,在使用 `qsort` 函数时,需要确保传入的指针类型正确。在这里,应该传入的是 `LineData` 结构体类型的指针,而不是 `char` 类型的指针。
阅读全文
相关推荐
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![7z](https://img-home.csdnimg.cn/images/20241231044736.png)