char *text="100 こんにちは 5.0";というように使います。%dは整数、%sは文字列、%lfはdouble型の実数をtext文字列の中か ら得てi,buff,dという変数に代入しています。
int i;
char buff[256];
double d;sscanf(text,"%d %s %lf",&i,buff,&d);
printf("i = %d\nbuff=%s\nd=%lf\n",i,buff,d);
テキストファイルからデータを読み込む例
FILE *fp;sscanfの親戚にfscanfという関数がありますが、エラー処理がうまくできない等の理由で 上記のようにfgetsとsscanfをセットにして使う事が多いようです。少なくとも私はそうしてま す。
char buff[256];
int data;fp = fopen( "test,txt","rt" );
fgets( buff , 255 , fp ); /* ファイル"test.txt"から一行(最大255 文字)分の文字列を読み込み、buffに代入する */
sscanf( buff , "%d",&data );
fclose( fp );