Πώς να sscanf() παράδειγμα, χρησιμοποιώντας ένα κόμμα (,) ως διαχωριστικό

Αποποίηση ευθυνών για περιεχόμενο της Γνωσιακής βάσης που έχει αποσυρθεί

Αυτό το άρθρο αφορά προϊόντα για τα οποία η Microsoft δεν παρέχει πλέον υποστήριξη. Συνεπώς, το παρόν άρθρο παρέχεται "ως έχει" και δεν θα ενημερώνεται πλέον.

Σύνοψη


Το παρακάτω παράδειγμα δείχνει πώς να χρησιμοποιήσετε τη λειτουργία χρόνου εκτέλεσης sscanf() C για να διαβάσετε από ένα εσωτερικό buffer οριοθέτησης πεδία με ένα κόμμα (,). Το κλειδί είναι να χρησιμοποιήσετε τις αγκύλες με τη μορφή της συνάρτησης sscanf(). Η μορφή θα είναι % [^ ','], που υποδεικνύει στη συνάρτηση να διαβάσει από το buffer, μέχρι να φτάσει ένα κόμμα (,).

Δείγμα κώδικα

/* 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 Ιαν 2017 - Αναθεώρηση: 1

Σχόλια