簡體   English   中英

char ch 和 char ch = 0 有什么區別?

[英]What is the difference between char ch and char ch = 0?

我正在閱讀 Stroustrup 的 PPP 的第 10 章以及他在此處閱讀文件時使用的示例:

http://www.c-jump.com/bcc/c155c/c155Stxtbook2nd/Chapter10/chapter_10_11_2_cpp.htm

當他讀取溫度時,我注意到他使用了char ch1; char ch2;

然而,當他讀這個月的時候,我看到他確實char ch = 0;

我想知道,初始化char ch = 0;的目的是什么char ch = 0; 當他在之前的功能中沒有這樣做時? 它有什么區別嗎?

0x00\\0對應的字符一般表示字符串的結束。 這是當您聽到諸如“以空字符結尾的字符串”之類的內容時所隱含的字符。

當使用strlen函數掃描字符串時,這會告訴函數它到達了結尾。

話雖如此,看着你的鏈接,我沒有看到在月份檢測中將其初始化為 0 而不是在其他函數中的特殊原因。 在每種情況下,看起來ch都提供了來自流的值......當然,初始化變量是一件好事,但我敢說這並不總是必要的。

沒理由。 這個片段不是編碼風格的好例子。 參數可以有兩種方式:一方面,初始化變量是一個很好的做法,即使您打算在之后重新初始化它們,另一方面,為什么要花費(甚至是最低限度的)資源做一些永遠不會使用的事情(盡管編譯器很可能會檢測到並跳過初始化)。

但是在同一個文件中混合這兩種方法,除非它完全是為了展示兩種可能性的目的,否則只會令人困惑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM