leggendo una stringa con spazi con sscanf

Per un progetto sto provando a leggere un int e una stringa da una stringa. L’unico problema è che sscanf sembra interrompere la lettura di% s quando vede uno spazio. Esiste comunque un modo per aggirare questa limitazione? Ecco un esempio di ciò che sto cercando di fare:

#include #include int main(int argc, char** argv) { int age; char* buffer; buffer = malloc(200 * sizeof(char)); sscanf("19 cool kid", "%d %s", &age, buffer); printf("%s is %d years old\n", buffer, age); return 0; } 

Ciò che stampa è: “cool ha 19 anni”, dove ho bisogno di “cool kid ha 19 anni”. Qualcuno sa come risolvere questo problema?