修飾符的類型

2018-08-12 22:03 更新

修飾符的類型

C++ 允許 char、intdouble 類型的數(shù)據(jù)可以在其前面使用修飾符。修飾符用于更改數(shù)據(jù)變量的意義以實(shí)現(xiàn)變量可以更加精準(zhǔn)的運(yùn)用到其所應(yīng)用的環(huán)境中。

數(shù)據(jù)類型的修飾符如下:

  1. signed:有符號類型
  2. unsigned:無符號類型
  3. long:長整型
  4. short:短整型

signed、unsigned、longshort 可以應(yīng)用到整型基礎(chǔ)類型。此外,signedunsigned 可以應(yīng)用到char類型,long 可以應(yīng)用到 double 類型。

signedunsigned 也可以作為 longshort 修飾符的前綴。比如,unsigned long int.

C++ 也允許使用簡化字符的方式來聲明 unsigned、shortlong 整數(shù)。程序員可以僅使用 unsignedshortlong 而不使用 int 來定義整型變量。這里的 int 就被簡化掉了。比如,下面的兩句程序均實(shí)現(xiàn)對 unsigned 整型變量的聲明的功能。

    unsigned x;
    unsigned int y;

為了理解 C++ 中 signed 和 unsigned 整數(shù)修飾符的不同??梢試L試著運(yùn)行下面的程序:

    #include <iostream>
    using namespace std;

    /* This program shows the difference between
     * signed and unsigned integers.
    */
    int main()
    {
       short int i;   // a signed short integer
       short unsigned int j;  // an unsigned short integer

       j = 50000;

       i = j;
       cout << i << " " << j;

       return 0;
    }

上述程序執(zhí)行結(jié)果如下:

    -15536 50000

上述結(jié)果的背后原因是,unsigned 短整型變量的值為 5000,當(dāng)時(shí) short 類型時(shí),就是-15536 了。這和值表示范圍有關(guān)系。

C++ 中的類型限定符

類型限定符提供了關(guān)于變量保存值更豐富的信息:

限定符 意義
const const 類型修飾的對象在起運(yùn)行周期內(nèi)不可被改變
volatile volatile 修飾符用于提示編譯器,程序中某個(gè)變量值的改變可能不是程序顯式修改的
restrict restrict 限定符修飾的指針意味著所有修改該指針?biāo)赶騼?nèi)容的操作全部都是基于該指針的。僅在 C99 標(biāo)準(zhǔn)中增加了這個(gè)修飾符。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號