字符串常量比大小
发布网友
发布时间:2024-09-05 23:07
我来回答
共2个回答
热心网友
时间:2024-12-12 02:20
"cba"<"abc"比较的字符串的首地址
"cba"先创建,所以内存地址较小
热心网友
时间:2024-12-12 02:21
C++语言中,常量分为两种:文字常量(literal constant)和常变量(constant variable)。
文字常量又称为“符号常量”,经编译之后写在代码区,是不可寻址的。而常变量同其它变量一样被分配空间,是可以寻址的。
例如,在Visual C++中,语句int i=3;所对应的汇编代码为mov DWORD PTR _i$[ebp],3,其中_i$表示在一帧数据中,变量i距帧指针ebp的偏移量。文字常量3被直接写在代码区,在数据区无法找到它。利用预编译指令#define定义的常量也属于文字常量。
常变量由普通变量在前面加const关键字而定义。常变量的值在初始化后不能改变,由编译器所做的语法检查进行保障。
由于运行时常变量并不是放在只读内存中,而是和一般变量一样放在数据区,所以在运行时如果能获得常变量的地址,一样可以对它们进行修改 。
所以:
string a = "abc";
"abc"是
const string b = "bcd";
b是,"bcd"是.