国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

c++從0開始到選擇java第一章+第二章-----基本內置類型與變量(1)

2019-11-06 06:59:28
字體:
來源:轉載
供稿:網友

第一章沒有什么講的

iostream庫包含兩個基礎類型istream和ostream

直接第二章吧

算數類型比較不常見的wchar_t 寬字符,char16_t,char32_t Unicode字符。

unsigned char c=-1結果輸出是255----》有符號的-1是11111111  第一位是符號位嘛,然后轉換為無符號類型,就成了255

signed char c2=256;給帶符號類型一個超出它表示范圍的值時,結果是未定義的。

也就是說不要混用帶符號與無符號類型

這里有個例子:unsigned u=10;int i=-42;cout<<i+i<<endl;//輸出-84;cout<<u+i<<endl;//如果Int占32位,輸出4294967264;

字面值常量的形式和值決定了它的數據類型十進制字面值的類型是int long longlong 中尺寸最小值,如果一個字面值與之關聯的最大的數據類型都放不下,將產生錯誤,就比如,cout<<2222222222222222222222222222222222222222<<endl;輸出什么數字我也不知道。

嚴格來說,十進制字面值不會是負數,如果我們使用了一個形如-42的負十進制字面值,那個負號并不在字面值之內,它的作用僅僅是對字面值取負值而已;

可以通過前綴后綴來指定字面值的類型,比如42ULL,無符號整型字面值,類型是unsigned long long;    L'a',寬字符型字面值,類型是wchar_t;

對象的初始化與賦值不一樣,初始化的含義是創建變量時賦予其一個初始值,而賦值的含義是把對象的當前值擦除,而以一個新值來代替;

列表初始化:int units_sold=0;int units_sold={0};int units_sold(0);int units_sold{0};

但是如果我們使用列表初始化且初始值存在丟失信息風險時,編譯器將報錯。

比如:long double ld=3.1415926;   int a{ld},b={ld};//錯誤,轉換未執行    int a=ld//正確,但丟失了部分值

默認初始化比較重要,如果時內置類型的變量未被顯示初始化,它的值由定義的位置決定,定義于任何函數體之外的變量被初始化位0,定義在函數體內部的內置類型變量將不被初始化,一個未被初始化的內置類型變量的值是未定義的。總的來說,定義于函數體內的內置類型的對象如果沒有初始化,則其值未定義,類的對象如果沒有顯式的初始化,則其值由類確定。

聲明使得名字為程序所知,定義負責創建與名字關聯的實體;

如果想要聲明一個變量而非定義它,就在變量名前加關鍵字extern,而且不要顯式地初始化變量;

extern int i;//聲明i而非定義i                 int j//聲明并且定義j                  extern double pi=3.14//定義

注意::在函數體內部,如果試圖初始化一個由extern關鍵字標記地變量,將引發錯誤。

作用域:沒什么好說的,直接舉個例子吧

int main(){    string p="23";    cout<<p;    {        int p=12;        cout<<p;    }}//p會分別輸出23  12;但是:

int main(){    cout<<p;    string p="23";    cout<<p;        int p=12;        cout<<p;}//這樣會出錯,因為string p與int p產生了沖突;


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 桃园县| 体育| 大田县| 吉水县| 沅江市| 涞水县| 山阳县| 无为县| 东阳市| 贵阳市| 神农架林区| 保亭| 逊克县| 新竹市| 龙南县| 婺源县| 富裕县| 安西县| 莫力| 崇阳县| 游戏| 信阳市| 金昌市| 丰镇市| 津市市| 万宁市| 潞城市| 台安县| 新绛县| 桐庐县| 泗阳县| 尉犁县| 贵州省| 二连浩特市| 分宜县| 托克逊县| 英德市| 军事| 肇源县| 桑植县| 沂源县|