1. 程式人生 > >【C++】C與C++中 const常量 - 修改時報錯

【C++】C與C++中 const常量 - 修改時報錯

#include <stdio.h>

#define PAUSE printf("Press Enter key to continue - By WangLei ..."); fgetc(stdin);



int main() {
	const int n = 10;
	// &n得到的指標的型別是const int *,必須強制轉換為int *後才能賦給 p,否則型別是不相容的。
	// int *p = (int*)&n;  //必須強制型別轉換
	int *p = &n;  //必須強制型別轉換




	*p = 99;  //修改const變數的值
	printf("%d\n", n);
	


	PAUSE;
	return 0;
}


 

解決辦法就是 - 強制型別轉換,把 

int *p = &n;

改成

int *p = (int*)&n;