为什么标准C++中两个直接字符串常量不能相加

这是《Accelerated C++》一书的第一章的课后题 - 下面的编译是否有问题?

1:

const std::string hello = “Hello”;
const std::string message = hello + “, world” + “!”;

2:

const std::string exclam = “!”;
const std::string message = “Hello” + “, world” + exclam;

第一部分是可以编译成功的,而第二部分是不行的。为什么?

因为在第二部分的第二句,赋值号的右边 先做”Hello” + “,world” 操作,而对于”Hello”和”,world”都是const char[]类型的,在标准C++中这个类型是不能做 “+”操作的。

而对于第一部分,hello + “,world”可以进行成功操作,因为hello为std::string类型,对于这种类型,标准库中重载了其与char[]类型之间的”+”操作符,所以是可以的,并且返回值是std::string类型,当然再与右面的exclam操作也没问题了。对于string类型的“+”操作符,在标准库中重载了string与string的+操作,string与char[]的+操作,以及string与char的+操作。也就是说’x'+hello也是可以的。

所以,为什么两个直接字符串不能相加?很简单一句话,因为C++标准库中没有实现“+”号对于char[]类型的重载以支持char[] + char[]操作。如果你在自己的程序中自己实现,也是可以的。

C++标准库下载

原文地址:点击打开链接

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下載網址: 從新手到高手C++_程式碼.rar http://fp.io/3355b224 從新手到高手C++_書籍PDF.rar http://fp.io/a8ba9fd4 從新手到高手C++_視頻教學.part1.rar http://fp.io/13f997fa 從新手到高手C++_視頻教學.part2.rar http://fp.io/b2c1a7bf 文名: 從新手到高手C++全方位學習隨書DVD文件 作者: 範磊 出版社: 科學出版社 書號: 703024706X 發行時間: 2009年09月 地區: 大陸 語言: 簡體文 簡介: 內容簡介 《從新手到高手C++全方位學習》總結了十幾本C++圖書及教材的優點,擯棄了它們語言拖沓、層次結構混亂等缺陷,從零開始、由淺入深、層層遞進、細緻而又詳盡地講解C++這門大型編程語言。 《從新手到高手C++全方位學習》知識系統全面,擁有字典般的容量,可隨用隨查,涵蓋指針、面向對象、操作符重載、流、命名空問、模板、異常處理、宏等主流C++開發技術。為了使讀者能夠活學活用,《從新手到高手C++全方位學習》針對重要的概念精心設計了438個實用範例,囊括大量經驗和技巧,即使已從事C++工作多年的朋友,也能從汲取新的養料。 《從新手到高手C++全方位學習》適合於從未學習過任何編程語言的新手,以及學習C++多年,仍舊不能融會貫通的讀者,對於正在使用C++進行開發的程序員也有很好的參考價值。 光盤提供的視頻教程,包含了第1章到第17章的內容,網上有18、19章的教程,這個光盤沒有包括。 視頻教程目錄的截圖: 源代碼目錄的截圖 從新手到高手C++目錄: 第1章 初識C++ 1.1 C++簡介 1.2 C++與C的區別 1.3 學習C++之前需要先學C嗎 1.4 C++與其他語言的區別 1.5 C++的版本以及安裝問題 第2章 做一個最簡短的C++程序 2.1 簡單的屏幕輸出小程序 2.2 輸出語句的使用 2.3 std::介紹 2.4 iostream與iostream.h的區別 2.5 重名問題 2.6 註釋 第3章 初步了解函數 3.1 一個簡單的函數 3.2 函數的傳參 3.3 函數的返回值. 參數與變量 3.4 函數的聲明與定義 3.5 局部變量 3.6 全局變量 第4章 C++數據類型 4.1 變量的定義 4.2 將變量及數據存儲在內存 4.3 布爾型變量 4.4 字符型變量 4.5 wchar_t雙字節型變量 4.6 整型概述 4.7 整型變量的定義 4.8 浮點型變量 4.9 常量 4.10 枚舉型常量 第5章 if語句與邏輯運算符 5.1 語句的定義 5.2 塊的定義 5.3 表達式的定義 5.4 運算符的定義 5.4.1 賦值運算符的定義 5.4.2 數學運算符的定義 5.4.3 賦值運算符與數學運算符的聯合 5.5 自加與自減 5.5.1 前置 5.5.2 後置 5.6 表達式的優先級 5.7 關係運算符 5.8 if語句 5.8.1 else語句 5.8.2 else if語句 5.8.3 if語句的嵌套 5.9 邏輯運算符及其使用 5.9.1 邏輯“與” 5.9.2 邏輯“或” 5.9.3 邏輯“非” 5.9.4 邏輯運算符的優先級 5.9.5 運算式的真假關係 5.10 三目運算符 5.10.1 三目運算符的優先問題 5.10.2 三目運算符的使用問題 5.10.3 三目運算符的型別問題 5.10.4 三目運算符在字符型變量的使用 5.11 複雜嵌套的if語句 第6章 面向對象 6.1 面向對象程序語言的主要特徵 6.2 類. 對象和成員 6.3 類. 對象和成員的使用方法及區別 6.3.1 聲明一個類 6.3.2 命名習慣 6.3.3 定義一個對象 6.3.4 類與對象的區別 6.3.5 對象與成員的關係 6.3.6 不要給類賦值 6.3.7 對像只能調用類存在的成員 6.4 公有 6.5 私有 6.6 成員函數的聲明和定義 6.7 為什麼將成員函數的聲明和定義分開 6.7.1 普通內聯函數 6.7.2 成員內聯函數 6.8 將類聲明和定義部分保存在頭文件 6.9 const成員函數 6.10 構造函數 6.11 默認構造函數 6.12 析構函數 6.13 析構對像數組 第7章 循環語句 7.1 循環語句的前身——goto語句 7.2 慎用goto語句 7.3 while語句 7.3.1 帶運算符的while語句 7.3.2 以字符為條件的while語句 7.3.3 限定while循環的次數 7.3.4 continue語句 7.3.5 break語句 7.3.6 永不休止的while循環 7.4 do… while循環 7.5 for循環 7.5.1 靈活的for循環 7.5.2 條件為空的for循環 7.5.3 執行為空的for循環 7.5.4 嵌套的for循環 7.6 switch語句 7.6.1 switch語句常見錯誤 7.6.2 switch的菜單功能 7.7 總結 第8章 指針 8.1 什麼是地址 8.2 用指針來保存地址 8.2.1 空指針 8.2.2 指針與變量類型 8.2.3 用指針來訪問值 8.2.4 指針地址. 指針保存的地址和該地址的值 8.2.5 指針對數值的操作 8.2.6 更換指針保存的地址 8.3 為什麼使用指針 8.3.1 棧和堆 8.3.2 用指針創建堆空間 8.3.3 用指針刪除堆空間 8.4 動態內存 8.4.1 內存洩漏 8.4.2 在堆創建對象 8.4.3 在堆刪除對象 8.4.4 訪問堆的數據成員 8.4.5 在構造函數開闢內存空間 8.4.6 對像在棧與堆的不同 8.5 this指針 8.6 指針的常見錯誤 8.7 指針運算 8.7.1 指針的加減運算 8.7.2 指針的賦值運算 8.7.3 指針的相減運算 8.7.4 指針的比較運算 8.8 指針 8.8.1 常量指針 8.8.2 指向常量的指針 8.8.3 指向常量的常指針 8.9 總結 第9章 引用 9.1 什麼是引用 9.1.1 引用的地址 9.1.2 引用就是別名常量 9.1.3 引用對象 9.1.4 空引用 9.2 函數的參數傳遞 9.2.1 通過值來傳遞函數參數 9.2.2 通過指針來傳遞函數參數 9.2.3 通過引用來傳遞函數參數 9.2.4 讓函數返回多個值 9.3 傳遞對象 9.3.1 用值來傳遞對象 9.3.2 使用指針來傳遞對象 9.3.3 使用const指針來傳遞對象 9.3.4 使用引用來傳遞對象 9.3.5 到底是使用引用還是指針 9.3.6 引用和指針可以一塊用 9.4 引用應注意的問題 9.4.1 引用容易犯的錯誤 9.4.2 引用一個按值返回的堆對象 9.4.3 引用一個按別名返回的堆對象 9.4.4 在哪裡創建,就在哪裡釋放 9.5 總結 第10章 深入函數 10.1 函數重載 10.1.1 普通函數的重載 10.1.2 成員函數的重載 10.2 函數的默認參數 10.3 重載構造函數 10.3.1 成員變量的初始化 10.3.2 成員變量的初始化與構造函數 10.3.3 複製構造函數 10.3.4 構造函數和new運算符 10.3.5 再談默認構造函數 10.4 析構函數和delete運算符 10.4.1 默認析構函數 10.4.2 調用構造函數進行類型轉換 10.5 淺層複製構造函數 10.6 深層複製構造函數 第11章 運算符重載 11.1 運算符重載 11.2 在成員函數實現自加 11.3 重載前置自加運算符 11.4 創建臨時對象 11.5 創建無名臨時對象 11.6 取消創建臨時對象 11.7 重載後置自加運算符 11.8 重載加法運算函數operator+ 11.9 重載賦值運算函數operator= 11.10 轉換類型運算符 11.10.1 溫習調用構造函數實現的類型轉換 11.10.2 通過構造函數將變量轉換為一個對象的成員變量 11.10.3 通過operator關鍵字進行轉換 11.11 什麼可以被重載,什麼不可以 第12章 繼承 12.1 什麼是繼承和派生 12.1.1 複雜的繼承和派生 12.1.2 繼承和派生如何在C++實現 12.1.3 繼承的種類及語法 12.1.4 單一繼承 12.2 公有型. 保護型和私有型 12.3 訪問權限 12.4 多重繼承 12.5 繼承的構造與析構 12.6 向基類構造函數傳遞參數 12.7 繼承和重載的兩義性問題 12.7.1 多重繼承容易產生兩義性 12.7.2 兩義性在重載時的一些問題 12.7.3 兩義性的歸屬問題 12.7.4 減少兩義性產生的混淆問題 12.7.5 虛基類不會產生兩義性 12.8 總結 第13章 虛函數 13.1 指向對象的指針 13.2 虛函數 13.3 拳擊遊戲 13.4 繼承是否可以實現多態性 13.5 在編譯時的靜態聯編 13.6 在運行時的靜態聯編 13.7 在編譯時的動態聯編 13.8 在運行時的動態聯編 13.9 調用虛函數 13.9.1 在虛函數調用成員函數 13.9.2 三種調用虛函數的方式比較 13.10 被繼承的虛函數仍然是虛函數 13.11 系統是如何調用虛函數的 13.12 在虛函數使用成員名限定 13.13 虛析構函數 第14章 數組 14.1 數組的基本用法 14.1.1 什麼是數組 14.1.2 數組元素 14.1.3 數組下標越界 14.1.4 倒序輸出 14.1.5 將數組的下標定義為常量 14.1.6 手動操作數組元素 14.1.7 數組的初始化 14.2 數組的用途 14.2.1 求平均考試成績 14.2.2 兔子繁殖問題 14.2.3 數字排序問題 14.3 數組在內存的分佈 14.4 輸出數組名 14.5 數組名與函數 14.6 傳遞與接收 14.7 數組與函數 14.7.1 函數傳參實例一——求數組所有元素的和 14.7.2 函數傳參實例二——用遞增法查找數據 14.7.3 函數傳參實例三——用二分法查找數據 14.7.4 函數傳參實例四——判斷數組是否按照順序排列 14.7.5 函數傳參實例五——判斷數組排列方式後執行不同的函數 14.8 數組在對像的傳參 14.9 數組對象 14.10 在數組對像初始化成員變量 14.11 指針數組 14.12 枚舉常量與數組.. 14.13 多維數組 14.14 多維數組的初始化 14.15 字符數組 14.16 重載數組下標操作符 第15章 鍊錶 15.1 聲明鍊錶結構 15.2 簡單的圖書鍊錶 15.2.1 圖書鍊錶 15.2.2 類的鍊錶 15.3 動態鍊錶 15.3.1 動態鍊錶的建立 15.3.2 解決輸入字符造成死循環的問題 15.3.3 動態鍊錶的顯示 15.3.4 動態鍊錶的刪除 15.3.5 動態鍊錶的插入 15.3.6 鍊錶統計 15.3.7 使用鍊錶 15.4 完整的動態鍊錶清單 15.5 鍊錶使用案例——走迷宮 15.5.1 創建Windows應用程序項目 15.5.2 創建窗口 15.5.3 加載圖片 15.5.4 句柄是什麼 15.5.5 顯示圖片 15.5.6 動畫 15.5.7 鍵盤控制人物移動 15.5.8 迷宮牆壁 15.5.9 走迷宮 15.5.10 用鍊錶記錄行走路線 第16章 多態性 16.1 為什麼要使用多重繼承 16.2 在派生類增加函數 16.3 使用多重繼承 16.4 多重繼承初始化構造函數的參數 16.5 多個子基類共享一個父基類 16.6 虛基類 16.7 慎用多重繼承 16.8 空的虛函數 16.9 抽像類和純虛函數 16.10 純虛函數 16.11 複雜的抽象結構 第17章 類的特殊成員 17.1 靜態成員變量 17.2 私有靜態成員變量 17.3 靜態成員函數 17.4 靜態成員的使用 17.5 函數指針 17.6 函數指針數組 17.7 函數指針也可以作為函數的參數 17.8 使用typedef簡化函數指針的聲明及定義 17.9 類的函數指針 17.10 成員函數指針數組 第18章 字符串 18.1 char型字符串 18.2 string型字符串 18.2.1 string型字符串的賦值 18.2.2 string型字符串的合併 18.2.3 string型字符串的部分合併 18.2.4 string型字符串的替換 18.2.5 string型字符串的複制 18.2.6 string型字符串的插入 18.2.7 string型字符串的刪除 18.2.8 string型字符串的查找 18.2.9 string型字符串的比較 18.2.10 判斷string型字符串是否為空 18.3 字符串的使用 18.3.1 swap() 交換兩個字符串的內容 18.3.2 將string型字符串轉為char型字符串 18.3.3 char型字符串與函數 18.3.4 函數如何返回字符串 18.4 結構體 18.4.1 結構體的賦值 18.4.2 結構體與函數 18.4.3 結構體與string 18.5 string數組與函數 18.6 流的使用 18.6.1 重載輸出運算符<< 18.6.2 友元的方式重載輸出運算符 18.6.3 重載自加運算符的執行次序 18.6.4 重載輸入運算符>> 18.7 編寫一個String類 18.7.1 創建String類 18.7.2 創建可自動調節大小的String類字符串對象 18.7.3 限制數組越界 18.7.4 用複制構造函數實現字符串的賦值功能 18.7.5 用重載賦值運算符函數實現真正的字符串賦值功能 18.7.6 用重載輸出運算符operator<<()函數實現字符串的輸出 18.7.7 用重載輸入運算符operator>>()函數實現字符串的輸入 18.7.8 用重載比較運算符實現字符串的比較 18.7.9 為String類添加字符串相加功能 18.7.10 為String類添加字符串的+=功能 18.7.11 完成後的String類 第19章 代碼重用 19.1 包含 19.2 將String類作為包含類 19.3 為book類重載執行相加運算的成員函數 19.4 包含對系統造成的消耗 19.5 按別名傳遞book對象 19.6 包含指向另一個類的指針 19.6.1 數據類Date 19.6.2 鍊錶類Node 19.6.3 標籤類linkelist 19.6.4 頭節點類HeadNode 19.6.5 尾節點TailNode類 19.6.6 間節點InterNode類 19.6.7 InterNode類的構造函數 19.6.8 InterNode類的插入函數 19.6.9 全部程序 19.7 將頭節點. 間節點和尾節點合併為一個節點 19.7.1 數據類Date 19.7.2 由Date類派生的圖書類Book 19.7.3 由Date類派生的藥品類medica 19.7.4 創建一個節點類Node 19.7.5 用來操作節點類Node的list類 19.7.6 list類的getfirst()方法 19.7.7 list類的operator[]方法 19.7.8 list類的repeat()方法 19.7.9 list類的insert()方法 19.7.10 list類的find()方法 19.7.11 重寫的藥品管理全部程序 19.8 利用類的包含來實現代碼重用 19.9 私有繼承 19.10 什麼時候使用私有繼承,什麼時候使用包含 19.11 保護繼承 第20章 友元類與嵌套類 20.1 友元類 20.2 嵌套類 第21章 流 21.1 流的操作 21.1.1 緩衝 21.1.2 流和緩衝區 21.1.3 標準輸入輸出對象 21.1.4 重定向 21.1.5 對象代表流 21.2 用cout輸出 21.2.1 重載運算符operator<< 21.2.2 清理緩衝區 21.2.3 有關輸出的相關函數 21.2.4 設置輸出的字段寬度 21.2.5 設置填充字段 21.2.6 設置浮點數的顯示精度 21.2.7 輸出末尾的0 21.2.8 設置標誌 21.2.9 setf()函數原型 21.2.10 所有15個標誌以及3個指示標誌 21.2.11 unset()函數 21.2.12 標準控制符 21.2.13 iomanip頭文件與標準控制符 21.3 用cin輸入 21.3.1 字符串的輸入 21.3.2 字符串的輸入問題 21.3.3 get()函數 21.3.4 帶字符引用參數的get()函數 21.3.5 帶2個參數的get()函數 21.3.6 帶3個參數的get()函數 21.3.7 getline()函數 21.3.8 read()函數 21.3.9 gcount()函數 21.3.10 peek()函數 21.3.11 putback()函數 21.4 文件的輸入和輸出 21.4.1 輸出數據到文件 21.4.2 讀取文件的數據 21.4.3 讀取空格及空格後面的字符 21.5 多種打開文件的方式 21.6 檢查文件是否打開 21.7 二進製文件和文本文件 21.7.1 以文本形式輸出到文件 21.7.2 以二進制形式輸出到文件 21.8 打開多個文件 21.9 命令行處理文件 21.10 使用命令行處理文件例程 21.11 指定讀取文件的數據 21.12 輸出數據到文件指定位置處 21.13 seekp()和seekg()函數的結合使用 21.14 臨時文件 21.15 sstream字符串輸入輸出流類 第22章 命名空間 22.1 什麼是命名空間 22.2 創建命名空間 22.2.1 擴充命名空間的內容 22.2.2 盡量在命名空間之外定義函數 22.2.3 命名空間的成員都是公有的 22.3 使用命名空間 22.4 使用關鍵字using 22.5 為你的命名空間取個別名 22.6 未命名的命名空間 22.6.1 未命名命名空間與全局變量的區別 22.6.2 未命名命名空間與static的區別 22.6.3 未命名命名空間. static與extern的區別 22.7 標準命名空間std 第23章 模板 23.1 什麼是模板 23.2 重載模板 23.3 具體化函數模板 23.3.1 函數模板不能重載 23.3.2 具體化函數模板解決重載問題 23.3.3 具體化函數模板與實例化模板函數 23.4 普通函數. 函數模板與具體化函數模板的優先級 23.4.1 普通函數和函數模板的執行次序 23.4.2 函數模板與具體化函數模板的執行次序 23.4.3 具體化函數模板與普通函數的優先級 23.5 函數模板的匹配 23.6 類模板的定義 23.7 複雜類模板 23.8 數組模板 23.9 對像數組模板 23.10 具有多個參數的模板 23.11 為模板參數提供默認值 23.12 約束模板 23.13 模板成員 23.14 將模板用作參數 23.15 模板和​​友元 23.15.1 非模板友元類和友元函數 23.15.2 通用模板友元類和友元函數 23.15.3 特定類型模板友元函數 23.16 多餘的臨時對象 23.17 靜態成員和模板 23.18 標準模板庫 23.18.1 容器 23.18.2 順序容器 23.18.3 關聯容器 23.18.4 算法類 23.18.5 總結 第24章 異常和錯誤處理 24.1 異常 24.2 設置多條catch語句 24.3 異常的派生 24.4 創建異常類的成員函數 24.5 異常類的虛函數 24.6 異常類與模板的關係 第25章 補充內容 25.1 預處理過程 25.1.1 預處理指令 25.1.2 #include指令 25.1.3 #define指令 25.1.4 用#define指令替換常量 25.1.5 用#define定義一個特定字符串並對其進行測試 25.1.6 #ifdef. #define和#endif的用途 25.1.7 帶參數的#define 25.1.8 宏與內聯函數 25.1.9 #運算符 25.1.10 ##運算符 25.1.11 #undef指令 25.1.12 #if指令 25.1.13 #endif指令 25.1.14 #if defined指令 25.1.15 #ifdef和#ifndef指令 25.1.16 #elif指令 25.1.17 #error指令 25.1.18 #line指令 25.1.19 #pragma 指令 25.2 預定義的宏 25.3 assert()宏 25.4 嘗試編寫一個簡單的assert()宏 25.5 不能為0的變量 25.6 用宏函數來輸出表達式的值 25.7 調試的級別 25.8 C++類型轉換及運行時類型信息(RTII) 25.8.1 動態類型轉換符 25.8.2 靜態類型轉換 25.8.3 重新解釋類型轉換 25.8.4 常類型轉換 25.8.5 運行時類型信息 25.9 關鍵字volatile 25.10 關鍵字const 25.11 關鍵字mutable 25.12 聯合數據類型union 25.13 聯合數據類型的內存佔用 25.14 匿名聯合體 25.15 再談指針 25.15.1 指針與數組 25.15.2 指針操作多維數組 25.15.3 指向多維數組的指針作為函數參數 25.15.4 字符串的指針 25.15.5 接受字符串指針的函數 25.15.6 指向字符串的指針變量與字符數組的區別 25.15.7 指向函數的指針 25.15.8 指向函數的指針的用途 25.15.9 指針數組 25.15.10 指向指針的指針 25.16 位運算 25.16.1 按位與“&”運算符 25.16.2 按位或“|”運算符 25.16.3 異或“^”運算符 25.16.4 取反“~”運算符 25.16.5 左移“<<”運算符 25.16.6 右移“>>”運算符 25.16.7 複合位運算符 25.16.8 不同長度數字的位運算 25.16.9 位運算的實例 25.17 位字段 25.18 區域差異 25.18.1 locale類 25.18.2 默認區域表示或全局區域表示 25.18.3 時間與地理設置 25.18.4 locale與time.h時間函數的搭配使用 25.18.5 區域表示locale與流的搭配使用 25.18.6 區域表示locale與模板的搭配使用 附錄A ASCII碼對照表 附錄B C++的關鍵字 附錄C C++常用頭文件列表
谭浩强教授,我国著名计算机教育专家。1934年生。1958年清华大学毕业。学生时代曾担任清华大学学生会主席、北京市人民代表。他是我国计算机普及和高校计算机基础教育开拓者之一,现任全国高等院校计算机基础教育研究会会长、教育部全国计算机应用技术证书考试委员会主任委员。 谭浩强教授创造了3个世界纪录:(1)20年来他(及和他人合作)共编著出版了130本计算机著作,此外主编了250多本计算机书籍,是出版科技著作数量最多的人。(2)他编著和主编的书发行量超过4500万册,是读者最多的科技作家。我国平均每30人、知识分子每1.5人就拥有1本谭浩强教授编著的书。(3)他和别人合作编著的《BASIC语言》发行了1200万册,创科技书籍发行量的世界纪录。此外,他编著的《C程序设计》发行了600万册。他曾在央电视台主讲了BASIC,FORTRAN,COBOL,Pascal,QBASIC,C,Visual Basic七种计算机语言,观众超过300万人。 在我国学习计算机的人很少有不知道谭浩强教授的。他善于用容易理解的方法和语言说明复杂的概念。许多人认为他开创了计算机书籍贴近大众的新风,为我国的计算机普及事业做出了重要的贡献。 谭浩强教授曾获全国高校教学成果国家级奖、国家科技进步奖,以及北京市政府授予的“有突出贡献专家”称号。《计算机世界》报组织的“世纪评选”把他评为我国“20世纪最有影响的IT人物”10个人之一(排在第2位)。他的功绩是把千百万群众带入计算机的大门。 1 C语言概述 1.1 C语言的发展过程 1.2 当代最优秀的程序设计语言 1.3 C语言版本 1.4 C语言的特点 1.5 面向对象的程序设计语言 1.6 C和C++ 1.7 简单的C程序介绍 1.8 输入和输出函数 1.9 C源程序的结构特点 1.10 书写程序时应遵循的规则 1.11 C语言的字符集 1.12 C语言词汇 1.13 Turbo C 2.0 集成开发环境的使用 1.13.1 Turbo C 2.0 简介和启动 1.13.2 Turbo C 2.0 集成开发环境 1.13.3 File菜单 1.13.4 Edit 菜单 1.13.5 Run 菜单 1.13.6 Compile 菜单 11.13.7 Project 菜单 1.13.8 Options菜单 1.13.9 Debug 菜单 1.13.10 Break/watch 菜单 1.13.11 Turbo C 2.0 的配置文件 2 程序的灵魂—算法 2.1 算法的概念 21 2.2 简单算法举例 21 2.3 算法的特性 24 2.4 怎样表示一个算法 24 2.4.1 用自然语言表示算法 24 2.4.2 用流程图表示算法 24 2.4.3 三种基本结构和改进的流程图 28 2.4.4 用N-S 流程图表示算法 29 2.4.5 用伪代码表示算法 30 2.4.6 用计算机语言表示算法 31 2.5 结构化程序设计方法 31 3 数据类型、运算符与表达式 3.1 C语言的数据类型 32 3.2 常量与变量 33 23.2.1 常量和符号常量 33 3.2.2 变量 33 3.3 整型数据 34 3.3.1 整型常量的表示方法 34 3.3.2 整型变量 35 3.4 实型数据 37 3.4.1 实型常量的表示方法 37 3.4.2 实型变量 38 3.4.3 实型常数的类型 39 3.5 字符型数据 39 3.5.1 字符常量 39 3.5.2 转义字符 39 3.5.3 字符变量 40 3.5.4 字符数据在内存的存储形式及使用方法 41 3.5.5 字符串常量 41 3.5.6 符号常量 42 3.6 变量赋初值 42 3.7 各类数值型数据之间的混合运算 43 3.8 算术运算符和算术表达式 44 3.8.1 C运算符简介 44 3.8.2 算术运算符和算术表达式 45 3.9 赋值运算符和赋值表达式 47 33.10 逗号运算符和逗号表达式 48 3.11 小结 49 3.11.1 C的数据类型 49 3.11.2 基本类型的分类及特点 49 3.11.3 常量后缀 49 3.11.4 常量类型 49 3.11.5 数据类型转换 49 3.11.6 运算符优先级和结合性 50 表达式 50 4 最简单的 C程序设计—顺序程序设计 4.1 C语句概述 51 4.2 赋值语句 53 4.3 数据输入输出的概念及在 C 语言的实现 54 4.4 字符数据的输入输出 54 4.4.1 putchar 函数(字符输出函数) 54 4.4.2 getchar函数(键盘输入函数) 55 4.5 格式输入与输出 55 4.5.1 printf 函数(格式输出函数) 56 4.5.2 scanf函数(格式输入函数)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值