#include <iostream>
using namespace std;
void fun(char** p, int num)
{
for (int i = 0; i < num; i++)
{
char* pTemp = p[i];
cout<<p[i]<<endl;
}
}
void main(void)
{
char* aaa[] = {"a11", "b11", "c11"};
fun(aaa, 3);
int n;
cin>>n;
}
如果函数void fun(char** p, int num)修改为void fun(const char** p, int num)编译时会出现如下错误:
Error2error C2664: 'fun' : cannot convert parameter 1 from 'char *[3]' to 'const char **'
原因不太清楚,使用时注意一下即可
本文探讨了C++中指针传递的问题,特别是当尝试将字符数组传递给接受常量字符指针的函数时可能出现的编译错误。通过一个具体的例子说明了如何避免这类错误。
589

被折叠的 条评论
为什么被折叠?



