Я должен разбить строку на несколько.На самом деле мне нужно проанализировать некоторые входные данные из файла, например, в следующем формате (i9, i9, i2).
i9 означает десятичное число как: (5blankspaces) 4567
Так что мне нужно правильно восстановить эти цифры.Ширина всегда фиксирована, поэтому каждое число должно подчиняться этому.Правильный экземпляр этого формата:
(5 пробелов) 4567 (6 пробелов) 453 (1 пробел) 2 или (5 пробелов) 4567 (6 пробелов) 45322 (где 22 - аргумент для i2 в данном случае)
Пробелы перед числами вызывают у меня головную боль, поэтому я подумал, что могу разбить каждый аргумент на массив символов и затем преобразовать его в целое число, так как спецификатор% d игнорирует все пустое пространство, и я не знаю, как использовать ширинуа также игнорируя пробелы .. (если это можно сделать, я имею в виду, анализируя все в целое число, скажите, пожалуйста, так !!)
Если нет ... ну, мне нужна помощь, чтобы разобрать каждую строку в подстроку,пока я сделал это, но это не работает:
while (fgets(buffer, 600, f)) {
sscanf(buffer, "%9[^\n]s %9[^\n]s %2[^\n]s", arg1, arg2, arg3);
....
}
Пожалуйста, любая помощь будет принята с благодарностью !!!