Я написал приложение в C, которое ожидает две строки на входе. Первый ввод показывает, насколько велика будет массив int, а второй вход содержит значения, разделенные пробелом. Например, следующие входныеC, чтение нескольких чисел из одной строки ввода (scanf?)
5
1 2 3 4 99
должен создать массив, содержащий {1,2,3,4,99}
что это самый быстрый способ сделать это? Моя проблема состоит в том, чтобы читать несколько чисел, не перебирая всю строку, проверяя, является ли это пробелом или числом?
Спасибо.
Я думал, что он будет искать числа, разделенные «\ n»? – migajek
'% d' (а также большинство% конверсий, но не все) автоматически пропускает пробелы. Прочтите документацию scanf для получения более подробной информации! –
«Если по какой-то причине»? Вы никогда не должны использовать 'scanf' и предпочитаете использовать' fgets' с 'sscanf'. http://c-faq.com/stdio/scanfprobs.html – jamesdlin