ホーム
|
アプリケーション | Tips | ダウンロード | プログラム
| コラム

CBアプリ工房


Tips >   

sscanf, sprintf で文字列を指定形式で表示 

更新 : 2009/11/12

 



解説:
C 言語の sscanf 関数と sprintf 関数を使って、入力されたデータを指定形式で表示します。
sscanf 関数は、1 文字ずつスキャンして文字列を読み込み、指定した書式に従って指定したアドレスに格納します。scanf 関数 が標準入力に対して行うのと同じような動きを文字列に対して行います。
sprintf 関数は、書式に従って、変換を行った出力を文字列に格納します。printf 関数と同様の動きをします。

使用例:
今回は、Edit1 に入力した数字を書式化して Edit2 に表示しています。

準備としては、Edit を二つ配置するだけです。

まず Edit1 に数字を入力して Edit2 にフォーカスを移動してください。小数部 3 桁の実数が表示されます。
Windows のプログラムでも、こうした標準関数を使う場面が良くあります。C/C++ のプログラムを読むのにもこうした知識は役に立ちます。ヘルプなどを調べて便利な使い方を覚えてください

//-------------------------------------------------------------------
void __fastcall TForm1::Edit1Exit(TObject *Sender)
{
    double wk1;
    char buf[32];

    // 数値を取り出します。
    if (sscanf(Edit1->Text.c_str(), "%lf", &wk1) == 0) wk1 = 0.0;

    //小数部を 3 桁表示させます。
    sprintf(buf, "%5.3lf", wk1);
    Edit2->Text = buf;
}
//-------------------------------------------------------------------



[ ホーム | ページトップ | ブック | リンク | サイトマップ ]
Copyright(c) 2003 Shibu All rights reserved.