奇领yy6608在线观看官网

  • <acronym id="y46sa"></acronym>
  • <kbd id="y46sa"></kbd>
  • 空間訪問權限:游客, 頭像訪問權限:自己
    [登錄]后可以瀏覽更多信息
    博客正文
    【操作】
    回車與換行的區別

    文章來源 http://www.cnblogs.com/clarkchen/archive/2011/06/02/2068609.html

    我一直沒有搞得很清楚,回車和換行符有啥區別。
    記得大一時,C語言老師就說過回車、換行,但都沒說得那么細。前兩天,看寫兩句Perl代碼時,忽然想起區別一下回車和換行(\r和\n),F在理解清楚了,記個筆記吧。

    符號    ASCII碼      意義
    \n        10        換行NL
    \r        13        回車CR

    回車 \r 本義是光標重新回到本行開頭,r的英文return,控制字符可以寫成CR,即Carriage Return
    換行 \n 本義是光標往下一行(不一定到下一行行首),n的英文newline,控制字符可以寫成LF,即Line Feed
    在不同的操作系統這幾個字符表現不同,比如在WIN系統下,這兩個字符就是表現的本義,在UNIX類系統,換行\n就表現為光標下一行并回到行首,在MAC上,\r就表現為回到本行開頭并往下一行,至于ENTER鍵的定義是與操作系統有關的。通常用的Enter是兩個加起來。

    在計算機還沒有出現之前,有一種叫做電傳打字機(Teletype Model 33)的玩意,每秒鐘可以打10個字符。但是它有一個問題,就是打完一行換行的時候,要用去0.2秒,正好可以打兩個字符。要是在這0.2秒里面,又有新的字符傳過來,那么這個字符將丟失。
    于是,研制人員想了個辦法解決這個問題,就是在每行后面加兩個表示結束的字符。一個叫做“回車”,告訴打字機把打印頭定位在左邊界;另一個叫做“換行”,告訴打字機把紙向下移一行。
    這就是“換行”和“回車”的來歷,從它們的英語名字上也可以看出一二。
    后來,計算機發明了,這兩個概念也就被般到了計算機上。那時,存儲器很貴,一些科學家認為在每行結尾加兩個字符太浪費了,加一個就可以。于是,就出現了分歧。
     
    /*======================================*/
    \n:  UNIX 系統行末結束符
    \n\r: window 系統行末結束符
    \r:  MAC OS 系統行末結束符
    /*======================================*/
    一個直接后果是,Unix/Mac系統下的文件在Windows里打開的話,所有文字會變成一行;而Windows里的文件在Unix/Mac下打開的話,在每行的結尾可能會多出一個^M符號。(這也是經常說見到的現象,哈哈,原來是這樣的)

    c++語言編程時(windows系統)\r 就是return 回到 本行 行首 這就會把這一行以前的輸出 覆蓋掉
    如:
    int main() {
    cout << "hahaha" << "\r" << "xixi" ;
    }
    最后只顯示 xixi 而 hahaha 被覆蓋了
    \n 是回車+換行 把光標 先移到 行首 然后換到下一行 也就是 下一行的行首拉
    int main() {
    cout << "hahaha" << "\n" << "xixi" ;
    }
    則 顯示
    hahaha
    xixi

    欄目劃分
    WEB應用程序 (33)
    桌面應用程序 (10)
    Windows操作系統 (12)
    xNix操作系統 (5)
    數據庫技術 (3)
    多媒體技術 (1)
    硬件技術 (4)
    辦公軟件 (2)
    以史為鑒 (2)
    教學反思1 (2)
    奇聞趣事 (5)
    其它 (11)
    教學反思 (4)
    電子技術 (2)
    中學生科技 (3)
     
    主人推薦
    音象定位和音箱喇叭的排步
    我國高層意向已定:制造大飛機
    “運十”悲劇
    日爾曼人
    細說百越族
    宇宙深處的秘密——星云
    [強烈推薦]中華56民族FLASH完整珍藏版
    一組漂亮的植物
      
    奇领yy6608在线观看
    友情链接:dafa888手机典版网页登录 白小姐四肖必选期期中