ILE C/C++ Run-Time Library Functions


sscanf() -- Read Data

Format

#include <stdio.h>
int sscanf(const char *buffer, const char *format, argument-list);

Language Level: ANSI

Threadsafe: Yes.

Description

The sscanf() function reads data from buffer into the locations that are given by argument-list. Each argument must be a pointer to a variable with a type that corresponds to a type specifier in the format-string.

Return Value

The sscanf() function returns the number of fields that were successfully converted and assigned. The return value does not include fields that were read but not assigned.

The return value is EOF when the end of the string is encountered before anything is converted.

Example that uses sscanf()

This example uses sscanf() to read various data from the string tokenstring, and then displays that data.

#include <stdio.h>
#include <stddef.h>
 
int main(void) 
{ 
    char    *tokenstring = "15 12 14"; 
    char    *string = "ABC Z"; 
    wchar_t  ws[81]; 
    wchar_t  wc; 
    int   i; 
    float fp; 
    char  s[81]; 
    char  c; 
 
    /* Input various data                                         */ 
    /* In the first invocation of sscanf, the format string is    */ 
    /* "%s %c%d%f". If there were no space between %s and %c,     */ 
    /* sscanf would read the first character following the        */ 
    /* string, which is a blank space.                            */ 
 
    sscanf(tokenstring, "%s %c%d%f", s, &c, &i, &fp); 
    sscanf(string, "%ls %lc", ws,&wc); 
 
    /* Display the data */ 
    printf("\nstring = %s\n",s); 
    printf("character = %c\n",c); 
    printf("integer = %d\n",i); 
    printf("floating-point number = %f\n",fp); 
    printf("wide-character string = %S\n",ws); 
    printf("wide-character = %C\n",wc); 
} 
 
 
/*****************  Output should be similar to:  ***************** 
 
string = 15 
character = 1 
integer = 2 
floating-point number = 14.000000 
wide-character string = ABC 
wide-character = Z 
 
*******************************************************************/ 
 

Related Information


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]