抗议雨中飞燕!!说话吞吞吐吐!!不解释明白,装酷吗??????
很多基础的东西,是你要去看书的,不是等着人家来讲的...
偶学编程,也许本身就是一个错。。。
char* a = "abc";
convert `const char*` into `char *` error
by 雨中飞燕 QQ:78803110 QQ讨论群:5305909
[url=http://bbs.bc-cn.net/viewthread.php?tid=163571]请大家不要用TC来学习C语言,点击此处查看原因[/url]
[url=http://bbs.bc-cn.net/viewthread.php?tid=162918]C++编写的Windows界面游戏[/url]
[url=http://yzfy.org/]C/C++算法习题(OnlineJudge):[/url] http://yzfy.org/
自己简单的理解:
char* a = "abc";
编译器把字符串"abc"做为常量所分配的节区类似与 win32中的 .const数据段
.const数据段的属性是由程序运行的时候操作系统为其建立的,它的属性由在GDT中为该任务建立的LDT中存在的数据段描述符来表示,
具体于 "abc"所在的数据段 所属的段描述符的type 4位属性为 数据段 可读 不可写 ,
我们的程序的cs段的 rpl和cpl 是3级 也就是最外级,当对属性为可读不可写的数据段 进行写操作的时候,cpu自己判断我们的程序不具有该权限,
所以产生一个保护性中断,交由操作系统来处理.操作系统产生1个对话框.