Originariamente inviato da sakertorten
sscanf(arg1,"%s_%s_%s",a1,a2,a3);
il primo %s si "mangia" tutta la stringa (che per definizione termina al primo spazio, tab o \n)
se le parti di nome che vuoi spezzare è separato dal carattere '_' potresti modificare così:
codice:
sscanf(arg1,"%[^_]_%[^_]_%s",a1,a2,a3);