C ++ modificadores de tipo
C ++ permite que você coloque um modificador na frente dechar, int e tipo de dados duplo.Modificadores para mudar o significado dos tipos básicos, para que ele possa atender melhor às necessidades de uma variedade de situações.
As listas a seguir o tipo de dados modificadoras:
- assinado
- não assinado
- longo
- curto
Modificadoresassinados, não assinados, longas e curtas pode ser aplicado para inteiro,assinados enão assinadospodem ser aplicadas parachar,muito pode ser aplicado para o dobro.
Modificadoresassinados e não assinadospodem ser tãolongooucurtoprefixo modificador. Porexemplo: int longo não assinado.
C ++ permite o uso de notação abreviada para declararum inteiro longshort ousem assinaturanãoassinado.Você não pode escrever int, escrever apenas a palavranão assinado, curto, ou não assinado, longo, intestá implícita. Por exemplo, as duas instruções a seguir ambos declarar variáveis inteiro sem sinal.
unsigned x; unsigned int y;
Para entender a diferença entre a interpretação C ++ assinado inteiro e qualificador inteiro sem sinal entre, vamos executar o seguinte programa curto:
#include <iostream> using namespace std; /* * 这个程序演示了有符号整数和无符号整数之间的差别 */ int main() { short int i; // 有符号短整数 short unsigned int j; // 无符号短整数 j = 50000; i = j; cout << i << " " << j; return 0; }
Quando o programa acima é execução, será de saída os seguintes resultados:
-15536 50000
Estes resultados, os inteiro curto 50.000 padrões de bits não assinados são interpretados como short inteiro assinado -15.536.
Em C ++ qualificadores do tipo
Tipo Qualifiers fornecer variáveis de informação adicionais.
限定符 | 含义 |
---|---|
const | const类型的对象在程序执行期间不能被修改改变。 |
volatile | 修饰符volatile告诉编译器,变量的值可能以程序未明确指定的方式被改变。 |
restrict | 由restrict修饰的指针是唯一一种访问它所指向的对象的方式。只有 C99 增加了新的类型限定符 restrict。 |