修饰符是什么?
C++允许char,int和double数据类型在它们之前有修饰符。修饰符用于改变基本类型的含义,以便更精确地满足各种情况的需要。
这里列出了数据类型修饰符:
- signed
- unsigned
- long
- short
signed,unsigned,long和short修饰符可以应用于整数基类型。另外,signed和unsigned可以应用于char,long可以应用于double。
有signed和unsigned的修饰符也可以用作长修饰符或短修饰符的前缀。例如,unsigned long int。
C ++允许使用简写表示法来声明unsigned,短整数或长整数。您可以简单地使用unsigned,short或long,而不使用int。它自动暗示int。例如,以下两个语句都声明无符号整数变量。
1 unsigned x; 2 unsigned int y;
要理解C ++解释有符号和无符号整数修饰符的方式之间的区别,您应该运行以下短程序
1 #include <iostream> 2 using namespace std; 3 /* This program shows the difference between 4 * signed and unsigned integers. 5 */ 6 int main() { 7 short int i; // a signed short integer 8 short unsigned int j; // an unsigned short integer 9 j = 50000; 10 i = j; 11 cout << i << " " << j; 12 return 0; 13 }
运行此程序时,以下是输出
1 -15536 50000
上述结果是因为表示50,000作为短无符号整数的位模式被短路解释为-15,536。
在C++中键入限定符
类型限定符提供有关它们之前的变量的附加信息。
类型 | 描述 |
const | 执行期间程序无法更改const类型的对象。 |
volatile | 修饰符volatile告诉编译器变量的值可能会以程序未明确指定的方式更改。 |
restrict | 由restrict限定的指针最初是唯一可以访问它指向的对象的方法。只有C99添加了一个名为restrict的新类型限定符。 |
For English visitors, please click here