How To sscanf() Example Using a Comma (,) as Delimiter

إخلاء المسؤولية لمحتوى قاعدة المعارف الذي تم إيقاف العمل به

تمت كتابة هذه المقالة حول منتجات توقفت Microsoft عن تقديم الدعم لها. ولذلك، تظهر هذه المقالة "كما هي" ولن يتم تحديثها بعد ذلك.

Summary


The example below shows how to use the sscanf() C run-time function to read from an internal buffer delimiting fields with a comma (,). The key is to use the brackets in the format of sscanf() function. The format will be %[^','], which tells the function to read from the buffer until a comma (,) is reached.

Sample Code

/* The following sample illustrates the use of brackets and the
caret (^) with sscanf().
Compile options needed: none
*/

#include <math.h>
#include <stdio.h>
#include <stdlib.h>

char *tokenstring = "first,25.5,second,15";
int result, i;
double fp;
char o[10], f[10], s[10], t[10];

void main()
{
result = sscanf(tokenstring, "%[^','],%[^','],%[^','],%s", o, s, t, f);
fp = atof(s);
i = atoi(f);
printf("%s\n %lf\n %s\n %d\n", o, fp, t, i);
}
خصائص

رقم الموضوع: 38335 - آخر مراجعة: 17‏/06‏/2014 - المراجعة: 1

تعليقات