プロが教えるわが家の防犯対策術!

scanf( "%10s" , file_name );
とすればfile_nameに読み込む文字数を10バイトに制限できるそうですが、10のところに定数(defineで定義したもの)を指定することはできないのでしょうか?

普通に
#define NUM 10
scanf( "%NUMs" , file_name );
としてもできないようでした。

A 回答 (2件)

#define NUM 10 のままで



sprintf(fmt, "%%%ds", NUM);
scanf(fmt , file_name);

という方法もあります。
    • good
    • 1

#define NUM "10"


としておいて
scanf( "%" NUM "s" , file_name );
とするとか。
    • good
    • 0
この回答へのお礼

その方法で出来ました。ありがとうございました。

お礼日時:2004/08/15 02:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!