Hàm sscanf đọc dữ liệu theo định dạng

int sscanf(const char *buffer, const char *format[,argument ] ...);

Parameter:

buffer: lưu dữ liệu đầu vào

format: string định dạng dữ liệu

argument: biến tùy chọn (giống như hàm printf( ))

Remark:

  • Hàm sscanf( ) đọc đữ liệu theo định dạng từ string đầu vào và lưu vào các biến.
  • Hàm trả về số trường dữ liệu được đọc thành công
  • Hàm trả về EOF nếu xảy ra lỗi hoặc kết thúc buffer đầu vào
  • Hàm trả về -1 nếu buffer đầu vào NULL

Ví dụ:

#include "conio.h"
#include <stdio.h>

void main( void )
{
    char tokenstring[] = "15 12 14...";
    char s[81];
    char c;
    int i;
    float fp;

    // Input various data from tokenstring:
    // max 80 character string:
    sscanf( tokenstring, "%80s", s ); // C4996
    sscanf( tokenstring, "%c", &c ); // C4996
    sscanf( tokenstring, "%d", &i ); // C4996
    sscanf( tokenstring, "%f", &fp ); // C4996
    // Note: sscanf is deprecated; consider using sscanf_s instead

    // Output the data read
    printf( "String = %s\n", s );
    printf( "Character = %c\n", c );
    printf( "Integer: = %d\n", i );
    printf( "Real: = %f\n", fp );

    getch();
}

Kết quả:

Hàm sscanf

Be the first to comment

Leave a Reply