直接将const char *赋值给char *是错误的,编译器不允许这种操作。
#include "stdio.h"
#include "string.h"
int main()
{
//方式1 strcpy
//方式1.1
//const char *cpCh = "const char";
//char ch[64]={0};
//char *pCh = ch; //是不是画蛇添足啊??
//strcpy(pCh, cpCh);
//方式1.2
const char *cpCh = "const char";
int nLen = strlen(cpCh);
char *pCh = new char[nLen + 1];
strcpy(pCh, cpCh);
//方式2 const_cast<>()
//const char *cpCh = "const char";
//char *pCh = const_cast<char *>(cpCh);//DO not forget '()'
printf("%s", pCh);
return 0;
}
const char *转化为char *的方法
最新推荐文章于 2024-07-08 00:01:13 发布