博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
字符串常量放在只读存储区
阅读量:2387 次
发布时间:2019-05-10

本文共 347 字,大约阅读时间需要 1 分钟。

给出以下定义,下列哪些操作是合法的?
1
2
const
char
*p1 = “hello”;
char
*
const
p2 = “world”;

正确答案: A   你的答案: C (错误)

p1++;
p1[2] = ‘w’;
p2[2] = ‘l’;
p2++;

只能选A。
p1是指向字符常量的指针,p1本身不是常量,所以p1++合法,A正确。
p2本身是指针常量,可以指向非常量的字符。但是"hello"这样声明的字符串是存储在只读存储区的,不可修改,所以B,C,D都错误。
C是错误的,P2是字符指针,且用字符串初始化,具有只读属性,所以不能直接赋值,编译可以通过,但是运行会出错。

字符串常量都是放在只读存储区的,都不可写

我只考虑了 const 的特性,而没有考虑字符串常量了!

转载地址:http://rwiab.baihongyu.com/

你可能感兴趣的文章
Redis 基础命令 --- String篇
查看>>
Redis 基础命令 --- Hash篇
查看>>
Redis 基础命令 --- Set篇
查看>>
Redis数据库篇 -- 生存时间
查看>>
面向对象设计基本原则
查看>>
Redis数据库篇 -- 事务
查看>>
hadoop 完全分布式环境搭建
查看>>
HDFS 回收站
查看>>
hadoop 完全分布式HA高可用集群(手工切换)搭建
查看>>
hadoop 完全分布式HA高可用集群(自动切换)搭建
查看>>
Hbase shell常见命令
查看>>
看看这同一句sql,scan index占用的资源大了很多!!
查看>>
couldn't set locale correctly报错解决
查看>>
回收基表的空间,造成物化视图只刷新了一部分数据
查看>>
ORA-12052,不能建立快速刷新物化视图的解决
查看>>
物化视图comlete刷新会产生大量的日志
查看>>
Mysql cluster slave server的自动检测与修复
查看>>
solaris同步时钟
查看>>
mysql升级
查看>>
V$sql_text v$sqlarea v$sql 的区别
查看>>