const를 숯불 * 숯불 * 사이의 변환

( https://www.cnblogs.com/songchaohuang/articles/5591576.html )

const char*是指向常量的指针,而不是指针本身为常量,可以不被初始化.该指针可以指向常量也可以指向变量,只是从该指针的角度而言,它所指向的是常量,

데이터는 그것을 가리키는 포인터 수정할 수 없습니다.

1.const의 문자는 숯불에 직접 할당되지 않은 이유를, 그래서 컴파일러는 전달할 수 없습니다 : 당신이 다음 문자로 할 수 있다면 그렇게 문자 허용되지 않습니다 const를 문자 포인트의 내용을 수정할 수 있습니다. 새로운 추가를 열려면 공간.

포함 <iostream>

STD의 네임 스페이스 사용함;
무효 메인 () {
CONST CHAR * CPC = "ABCDE";
숯 *의 PC = 새로운 새 문자 [100]
의 strcpy (PC, CPC)
COUT PC << << ENDL;
}
2.char CONST 숯불에 거기에 직접 할당

CONST 숯 *의 CPC;

문자 * PC = "ABCDE";

클릭당 비용 (CPC) = PC;

둘째, 포인터 상수, 상수 포인터

1. 포인터 상수는 무엇입니까? 즉, 포인터 포인터 상수 형 정수입니다.

例 : 숯불 *의 CONST NAME1 = "존";

name1="abc"; //错误,name1指针,不能变,一个指针类型的变量,存放的是地址,所以不能把'"abc"的地址赋给name1
char * name2= name1; //可以

2. 상수 포인터는 무엇입니까? 상수 포인터를 의미하는 포인터의 포인터 값을 변경할 수없는 상수 어드레스 포인터 일정한 콘텐츠 변경 될

例 : CONST 문자 * NAME1 = "존";

char s[]="abc"; name1=s; //正确,name1存放的地址可以改变
char * name2= name1; //不可以,因为name2 和 name1存放的是同一块地址,如果name2地址中的内容改了,则name1的内容也改了,那么name1就不再是指向常量的指针了。

전송 : http://www.cnblogs.com/yc_sunniwell/archive/2010/07/13/1776613.html

HTTPS : //www.jianshu.com/p/7736df723e84 재현

추천

출처blog.csdn.net/weixin_33742618/article/details/91214604