変換ルーチン・I/O変換フラグ

はてなブックマークに追加はてなブックマーク Yahoo!ブックマークに登録 ニフティクリップに追加 Livedoor クリップに追加 BuzzurlにブックマークBuzzurlにブックマーク Twitterに投稿  

ディスク上のファイルだけでなく、プリンタ、通信回線などのデバイスもファイルとして扱われます。
数値をプリンタや端末に出力するには、数値を文字へと変換する必要があります。
「123」という数字は、「"1", "2", "3"」という文字に変換する必要があります。

<<演算子

データを文字にしてファイルに出力(書き込み)するには、<<演算子を使用します。
これまでも、出力のために<<演算子をデフォルト設定で使ってきました。
<<演算子は、I/O変換フラグをを用いることで、フラグをセットできます。

フラグのセットは・・・

file.setf(flags);    // フラグのセット
file.unsetf(flags);    // フラグのクリア

で行えます。
以下は、10進数、16進数のフラグをクリア、セットして、数値を出力するコード。

#include <iostream>
 
int main() {
    int number = 0xAF;
    std::cout << "Dec: " << number << "\n";    // デフォルトは10進数
 
    std::cout.unsetf(std::ios::dec);    // 10進数をクリア
    std::cout.setf(std::ios::hex);    // 16進数をセット
 
    std::cout << "Hex: " << number << "\n";
 
    std::cout.setf(std::ios::dec);
 
    return 0;
}

実行結果。

Dec: 175
Hex: af

日時: 2008年06月11日 12:28
コメントを投稿






トラックバック

■この記事のトラックバックURL:
http://www.mapee.jp/mpe334/mt-tb.cgi/257

この記事にトラックバックされる方は、参照先が分かるようにするために、「変換ルーチン・I/O変換フラグ」へのリンクをお願いいたします。
以下のHTMLタグをトラックバック送信元ページ内に挿入して下さい。



※この記事へのリンクがない、また関連のないページからのトラックバックは反映されませんので、ご了承下さい。






あわせて読みたいブログパーツ
フィードメーター - C言語とC++勉強ルーム