error: cannot convert 'char*' to 'ElemType*'|
时间: 2023-12-10 15:06:19 浏览: 179
中山大学十套数据结构试题及答案_加水印1
这个错误通常是因为在使用函数的时候,传入的参数类型不正确,导致编译器无法正常进行类型转换。
例如,当函数期望的参数类型为 ElemType*,而你传入的实参类型为 char*,就会发生这个错误。
解决方法是需要将参数类型进行转换,确保传入的参数类型与函数期望的参数类型一致。
示例代码:
```c++
#include <iostream>
#include <cstring>
using namespace std;
typedef char ElemType; // 定义 ElemType 类型为 char
void printArray(ElemType arr[], int len) { // 使用 ElemType 类型作为参数类型
for (int i = 0; i < len; i++) {
cout << arr[i] << " ";
}
cout << endl;
}
int main() {
char str[] = "Hello World!";
int len = strlen(str);
printArray(str, len); // 传入参数时,需要将 char[] 类型的 str 转换为 ElemType[] 类型
return 0;
}
```
输出结果为:
```
H e l l o W o r l d !
```
阅读全文