字符串 字符串常量的区别?

LPCSTR A 32-bit pointer to a constant character string.
LPSTR A 32-bit pointer to a character string.

这是MFC中的两个Data Types,不知道constant character string和character string由什么区别?
最新回答
恋初雪

2024-11-27 19:07:09

constant 是常数、恒量的意思。
字符串常量是由一对双引号括起的字符序列。例如: "CHINA" ,"C program: , "$12.5" 等都是合法的字符串常量。
简单的说字符串常量是字符串的一种具体表达形式。

字符串常量和字符常量是不同的量。它们之间主要有以下区别:
1.字符常量由单引号括起来,字符串常量由双引号括起来。
2.字符常量只能是单个字符,字符串常量则可以含一个或多个字符。
3.可以把一个字符常量赋予一个字符变量,但不能把一个字符串常量赋予一个字符变量。在C语言中没有相应的字符串变量。这是与BASIC 语言不同的。
4.字符常量占一个字节的内存空间。字符串常量占的内存字节数等于字符串中字节数加1。增加的一个字节中存放字符"\0"(ASCII码为0)。这是字符串结束的标志。例如,字符串 "C program"在内存中所占的字节为:C program\0。字符常量'a'和字符串常量"a"虽然都只有一个字符,但在内存中的情况是不同的。
'a'在内存中占一个字节,可表示为:a
"a"在内存中占二个字节,可表示为:a\0符号常量
时光停驻于此

2024-11-27 14:24:13

constant character string的值不允许改变,character string为变量。
赏怀

2024-11-27 11:38:46

指向的空间不一样第一个是在静态的存储区,第二个是在栈中。