1樓:匿名使用者
c++ 為了與c相容,保留了printf和scanf.如果你學習物件導向程式設計的話,儘量不要混用,保持一至,c++輸入輸出中,編譯系統對資料型別進行了嚴格的檢查,凡是不正確的資料都不能通過統譯,比較安全。
cout主要是與《結合起來用。cout其實是乙個物件磨世,cout<<"c++"相當於<<(c++"
是可以過載的,這就是printf做不到的。過載可以輸出自己定義的資料型別,它的好處就不用我多講了。
cout輸出,功能是把要顯示的資料輸出到螢幕上。
在將各種型別的資料構造成字串時,sprintf 的強大功能很少會讓你失望。由於sprintf 跟printf 在用法上幾乎一樣,只是列印的目的地不同而已,前者列印到字串中,後者則直接在命令列上輸出。這也導致sprintf 比printf 有用得多。
o(∩_o關鍵就是這段啦。
sprintf 是個變參函式,定義如下:
int sprintf( char *buffer, const char *format [,argument] .
除了前兩個引數型別固定外,後面可以接任意多個引數。而它的精華,顯然就在第二個引數:
格式瞎嫌肢化數字字串。
sprintf 最常見的應用之一莫過於把整數列印到字串中,所以,spritnf 在大多數場合可以替代。
itoa。如:
把整數123 列印成乙個字串儲存在s 中。
sprintf(s, "d", 123); 產生"123"
請參考上面網頁,裡面有比較詳盡的解釋。
總而言之,就是cout輸出是到螢幕上面,sprintf輸出是到字串裡面,因為sprintf 就是者灶string print function的縮寫麼。
2樓:匿名使用者
sprintf與cout完全不同的。 sprintf輸出到字串,塌缺中即格式化字串,生成乙個格式化的扮碰字串。cout是個輸出流,團山輸出到控制檯命令列,也可以進行格式控制。
printf輸出格式字元到命令列。
c++中sprintf與cin的區別,以及cout與printf的區別
3樓:夜禮服假面
你要問的是scanf與cin的區別,以及cout與printf的區別這個吧??
printf,scanf 是c語言寫法, cout,cin是c++寫法,需要匯入iostream庫。printf,scanf 在輸入輸出時要定義好輸入輸出格式,而cout,cin則是根據變數的型別輸入輸出,不需要指定變數的輸入輸出型別。
scanf至少要比cin快一倍左右。
cin慢的原因:預設情況,cin與stdin總是保持同步的,也就是說這兩種方法。
可以混用,而不必擔心檔案指標混亂,同時cout和stdout也一樣,兩者混用不會輸出順序錯亂。正因為這個相容性的特性,導致cin有許多額外的開。
銷。(解決:只需乙個語句std::ios::sync_with_stdio(false);,這樣就可以取消cin於stdin的同步了,此時的。
cin就與scanf差不多了)
cin、cout是在編譯期間就決定了讀入變數的型別。而scanf()是在執行期決定的,編譯器無法優化,而且還要識別字串。理論上scanf比cin要慢很多,實際上快的原因是很多編譯器對cin、cout的處理過於保守。
同牛人建議,acmer 儘量用scanf,printf來進行輸入輸出吧。
C 中cout《字元陣列名為什麼能輸出字串
最大的寶寶 如果你想輸出ps的地址,可以使用 ps,而ps的用法,在c 實現中是輸出它指向的內容。流 使用很抽象的類别範本來實現,雖然是公開的,但至少先把stl或atl的基礎弄懂才可能讀懂它 我認為cout是類ostream的物件,而ostream的定義是typedef basic ostreamo...
在定語從語中,什麼時候用THAT,什麼時候用WHICH
1.that即可代表事物也可代表人,which代表事物 它們在從句中作主語或賓語,that在從句中作賓語時常可省略關係詞,which在從句中作賓語則不能省略。而且,如果which在從句中作 不及物動詞 介詞 的介詞的賓語,注意介詞不要丟掉,而且介詞總是放在關係代詞which的前邊,但有的則放在它原來...
does在什麼時候用,does在什麼時候用?
薊歆林曼麗 一般疑問句 主語為第三人稱單數,表示一般現在時的用does.一般現在時 主語為第三人稱單數,表示一般現在時的用does 此處does為實義動詞 主語為第三人稱單數,在謂語之前加does起強調作用。 dfvip1601微 你好,同學,才看到你發來的求助題。我想你問的是變成一般疑問句時,什麼...