社区
C++ Builder
帖子详情
这样的字符串常量,在 C 中能编译通过吗?
hiflower
2007-04-02 01:32:44
const char *s1 ="\x1FFirst....";
const char *s2 ="\x20Fifth....";
编译警告:字符值超出范围。
编译器把 First 和 Fifth的首字符也当作16进制 F 的转义字符了。
像这样的情况,该怎么定义才对呢?
...全文
183
8
打赏
收藏
这样的字符串常量,在 C 中能编译通过吗?
const char *s1 ="\x1FFirst...."; const char *s2 ="\x20Fifth...."; 编译警告:字符值超出范围。 编译器把 First 和 Fifth的首字符也当作16进制 F 的转义字符了。 像这样的情况,该怎么定义才对呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hiflower
2007-04-03
打赏
举报
回复
谢谢各位。
FFSB(...) 的达到了我的目的,要多加两个引号,将数字与字母分开。
我真搞不懂为什么 8 进制的转义是最长3位,而16进制转义就不限制长度!
theLibra12
2007-04-03
打赏
举报
回复
const char *s1 ="\x1F\First....";
const char *s2 ="\x20\Fifth....";
huzhangyou
2007-04-03
打赏
举报
回复
cc可能理解错误了
嘿嘿
关注一下
其实你不一定要这么处理的
cheneyhehe
2007-04-02
打赏
举报
回复
分开来,不是一样的可以吗?那里有问题?
constantine
2007-04-02
打赏
举报
回复
我理解你要的东西跟1,2楼都不一样,不知道谁错了
constantine
2007-04-02
打赏
举报
回复
const char *s1 ="\x1FFirst....";
0x1F超过ascii了。我不知道你这样做有什么。
const char *s2 ="\x20Fifth....";
这个简单const char *s2 ="\x20\x46\x69\x66\x74\x68....";就可以了
FFSB
2007-04-02
打赏
举报
回复
const char *s1 ="\x1F""First....";
const char *s2 ="\x20""Fifth....";
//这样也可以
ccrun.com
2007-04-02
打赏
举报
回复
const char *s1 ="\x1F\First....";
const char *s2 ="\x20\Fifth....";
C/C++中
字符串
常量
为什么可以赋值给char*?
1、对于C来说,
字符串
常量
是由字符构成的数组,比如“hello”类型为char[6],所以在C中可以直接
字符串
常量
赋值给char*。既然C中
字符串
不是
常量
,是不是可以改变
字符串
常量
的值呢?答案是否定的,虽然可以
编译
通过(会有警告),但是运行时会出错。因为
字符串
常量
位于只读存储区不允许写操作。实验如下: #include <stdio.h> #include <stdlib.h...
2.2
字符串
常量
池
2.2
字符串
常量
池 我们知道
字符串
的分配和其他对象分配一样,是需要消耗高昂的时间和空间的,而且
字符串
我们使用的非常多,JVM为了提高性能和减少内存的开销,在实例化
字符串
的时候进行了一些优化:使用
字符串
常量
池。每当我们创建
字符串
常量
是,JVM会首先检查
字符串
常量
池,如果该
字符串
已经存在
常量
池中,那么就直接返回
常量
池中的实例引用。如果
字符串
不存在
常量
池中,就会实例化该
字符串
并且将其放到
常量
池中。由...
字符串
常量
池
在说
字符串
常量
池之前,先了解下JVM的内存模型 I. JVM内存区域主要分为线程私有区域(橙色部分:虚拟机栈、本地方法栈、程序计数器)和线程共享区(绿色部分:Java堆、方法区)、直接内存。 线程私有区域生命周期和线程相同,依赖用户线程的启动、结束而创建和销毁(在hotspotVM中,每个线程都与操作系统的本地线程直接映射,这部分私有内存区域的存/否跟随本地线程的生/死对应) 直接内存 ...
string类修改
字符串
常量
在看C++的string类型的时候,突然发现string类型可以对其
字符串
常量
中的字符进行修改,而我记得
字符串
常量
是被存储在
常量
存储qu
[c++基础学习]关于
字符串
1.
字符串
常量
、字符
常量
字符串
常量
:用双引号括起来的,“abc”。 字符
常量
:单引号括起来的,‘a’。 这两个都是是
常量
,储存在
常量
储存区。
常量
储存区里面的数据是放在代码段里面的,不占用内存。 关于
常量
的储存,需要注意的是: C和C++中,const修饰的变量所在的存储区是不一样的。 在C中,const修饰的变量存储在“栈”中。 在C++中,const修饰的变量被定义为一个
常量
是放在代码段...
C++ Builder
13,825
社区成员
102,679
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章