1. 程式人生 > >c++ primer讀書筆記170119

c++ primer讀書筆記170119

重看了一遍第一章

問題1:c++中針對內建型別已經進行變數定義未初始化時的變數值處理。是否設定預設值?

①. 全域性變數編譯器會賦初值,區域性變數則需要自己初始化,否則編譯器報錯;
②. 全域性變數整型賦值系統賦初值為0,其他數值型別(float、long、double)應該都是,而char和string型別系統賦初值分別為’\0’空字元,即ASCII碼0,而string是空字串”“。
③. 靜態變數無論全域性還是區域性,編譯器都會賦初始值,值為多少由變數型別決定。

內建型別是程式語言自己定義的一些型別
在C++中內建型別有:
整型:
①整數 int、short和long
②字元型 char和wchar_t
③布林型 bool
整型可用修飾:unsigned
浮點:
float、double和long double

另外還定義了一種稱為void的特殊型別。void型別沒有對應的值,僅用在有限的情況下。通常用作無返回值的函式的返回型別。

如果內建型別的變數未被顯示初始化,它的值由定義的位置決定。定義於任何函式之外的變數被初始化為0。

定義於函式體內部的內建型別將不被初始化,一個未被初始化的內建型別變數的值是未定義的,如果試圖拷貝或以其他形式方位此類值將引發錯誤

問題2:輸入運算子從istream物件中讀入資料,然後存入右側的指定物件中。返回左側的istream物件作為計算結果???這裡的計算結果是什麼??然後就是值從istream物件中取出了以後,是不是就不再在istream物件中了???

在cin >> s1 >> s2 時,如果是以右側物件作為計算結果的話,

問題3:for迴圈中迴圈頭由一個初始化語句,一個迴圈條件和一個表示式組成,其中哪些是可以省略的??

for語句中的三個表示式可部分或全部省略,但兩個分號不能省略。

常見的是:將表示式1放在了for語句之前,或表示式3放在了迴圈體中,在for語句中就可相應地省略表示式1或表示式3。

如:上述for語句:
for(i=1 , s=0 ; i<=100 ; i++)  sum+=i;
可寫成如下形式:
   i=1; sum=0;
   for ( ;i<=100; ) {
      sum+=i;  i++;
   }       //等效於while迴圈

表示式2也可省略,寫成:
for (; ;) {…}
此時,系統約定表示式2的值為1,即恆為真,則等同於:for (; 1;) {…}。 

相關推薦

c++ primer讀書筆記170119

重看了一遍第一章 問題1:c++中針對內建型別已經進行變數定義未初始化時的變數值處理。是否設定預設值? ①. 全域性變數編譯器會賦初值,區域性變數則需要自己初始化,否則編譯器報錯; ②. 全域性變數整型賦值系統賦初值為0,其他數值型別(float、lon

**C++變數和基本內建型別**(C++ Primer讀書筆記

1.內建型別包括算數型別和空型別(void,適用於沒有任何返回值的函式或者其他的特殊場合)。算數型別包括整形(字元和布林型)和浮點型。 2.除了布林型和擴充套件的字元型之外。,其餘的整形都可以通過在前面新增unsigned來變成無符號型別(帶符號的型別可以表示負數,0,和整數。無符號型別

C++ primer 讀書筆記 9.2 容器庫概覽

模板類 list<int> deque<double> 也可以定義容器的容器, vector<string> vector<vector<string>> 迭代器 迭代器範圍 [begin, end)

C++ primer讀書筆記 7.4 類的作用域

一個類就是一個作用域,在類的外部,成員的名字被隱藏起來了 在類的外部定義成員函式時, 要加上類名和作用域運算子 而一旦遇到了類名,定義的剩餘部分在就在類的作用域之內了。包含引數列表和函式體 另一方面,函式的返回型別通常出現在函式名之前,因此如果返回類型別,需要明確指出哪個類定義了該

C++ primer 讀書筆記 第七章 02 訪問控制和封裝

在c++中,我們使用訪問說明符加強類的封裝性: 定義在public說明符之後的成員在整個程式內可被訪問,public成員是暴露在外的,決定了類的介面 定義在private說明符之後的成員可以被類的成員函式訪問,但不能被使用該類的程式碼訪問,private封裝了類的實現細節 一

C++ primer 讀書筆記 第七章 01 定義抽象資料型別

定義成員函式 成員函式的宣告必須在類的內部,它的定義既可以在類的內部也可以在類的外部。 struct Sales_data { std::string isbn() const { return bookNo; } double arv_price() co

C++ primer 讀書筆記 第七章 06 類的靜態成員

在成員的宣告之前加上static關鍵字即可宣告靜態成員 靜態成員的訪問 使用作用域運算子直接訪問 通過類的物件訪問 Account::rate(); Account ac1; Account *ac2 = &ac1; r = a

C++Primer讀書筆記十——泛型演算法.md

概述 在前一篇我們介紹了容器的基本概念以及使用其成員函式進行增刪改查,但有的時候我們還希望對容器進行更多的操作,比如:查詢特定元素,替換元素等。而標準庫並未給出此類成員函式, 此時需要引入algorithm標頭檔案,其中定義了一系列的操作演算法。 這些演算法不直

C++ primer讀書筆記 chapter3 標準庫型別

除第二章介紹的是C++的基本型別,本章將大致介紹一下C++定義的內容豐富的抽象資料庫型別標準庫。著重介紹一下sting、vector和bitset。 3.2標準庫string型別   1.string型別支援幾個建構函式。建構函式是一個特殊成員函式,定義如何初始化該型別的物件,以下是stri

C++Primer讀書筆記

動態型別:面向物件程式設計在執行時確定型別,泛型程式設計在編譯時獲知型別 模版:泛型程式設計基礎,一個建立類或函式的藍圖,適用於編譯時才確定類和函式型別的情況 模板定義:以template開始,後跟尖括號包圍的模板引數列表,內含一個或多個由逗號分隔的模板引數 例項化函式模板:呼叫模板時,隱式或顯示的指明模板實

C++ primer 讀書筆記

第六章 函式 傳入引用引數 吐槽:c++ primer 這本書感覺不行,關於很多概念講不清 同時代碼存在不具備連續以及調測性 #include "a.hpp" #i

C++Primer讀書筆記

第1章 開始 1、C++程式 程式原始檔的名字,一般包括兩部分:檔名以及檔案字尾。檔案字尾一般用來標識檔案的內容 標頭檔案:一般以.h字尾結尾 程式文字檔案:C++一般以.cpp字尾結尾 C++標準庫中的名字都是在一個稱作std 的名字空間中宣告的,這些名字在我

C++ Primer 讀書筆記

1,命令編譯生成的預設輸出檔案(可執行檔案) 命名為:a.out(Unix), a.exe(Windows) 2,cout輸出首先會存到快取中,而printf之類的輸出會直接輸出到輸出流中。 3,可以從鍵盤上輸入End-Of-File:Ctrl+d(Unix), Ct

C++ Primer 讀書筆記2.1

1、C++中認為:void修飾返回值表示:不返回任何值;void修飾引數表列,表示:不接受任何引數、若引數表列裡什麼也不寫,表示:可接受任意型別的引數。 2、C++中規定short <= int <= long <= long long 3、注意隱式型別轉

C++ primer 讀書筆記

第三章字串 向量 陣列 string 初始化 初始化型別:拷貝初始化、直接初始化 使用=初始化即為,拷貝初始化。 char 陣列與string char 陣列如果沒有\0截止

C++Primer讀書筆記(二)

10.無符號數不會小於0   注意不能將帶符號型別和無符號型別混合使用。11.變數宣告與定義的關係   extern int i;//宣告i而非定義i(只宣告不定義用extern)   int j;//宣告並定義j   extern int i=1;//定義(賦值操作抵消了e

C++primer讀書筆記(一)

1.endl操縱符  效果:結束當前行,並將與裝置關聯的緩衝區(buffer)中的內容刷到裝置中。緩衝重新整理操作可以保證到目前為止程式所產生的所有輸出都真正寫入輸出流中,而不是僅停留在記憶體中等待寫入輸入流。//在除錯時新增列印語句,這類語句應該保證“一直”重新整理流。否則

[C/C++] C++ Primer學習筆記

轉義 寫到 十六進制 程序 結果 否則 筆記 end 情況 下面記錄我每天看書學到的以前不太清楚的概念和用法: Day 1 endl:具有輸出換行的效果,並刷新與設備相關聯的緩沖區。 註:在調試程序過程中插入的輸出語句都應刷新輸出流,否則可能會造成程序崩潰,將會導致程序出錯

C++ Primer 學習筆記_5_變量和基本類型(續2)

key 情況 boa 類和對象 類定義 優點 splay 查看 變量定義  變量和基本類型 七、枚舉 枚舉不但定義了整數常量集,並且還把它們聚集成組。 枚舉與簡單的const常量相比孰優孰劣, 通過以下一段代

《Programming in C讀書筆記

pro 標準 編譯 常量 第七章 自己的 編程錯誤 基礎 結構體使用   該書由美國Seephen G.Kochan著 賈洪峰譯,電子工業出版社,來源是九江學院圖書館采購,現在藏於九江學院圖書館逸夫樓。   本書的主要內容:   第一章、基礎知識   第二章、編譯和運行第一