Это немного больше предварительной обработки, чем анализ вопроса в моей голове.В любом случае, существует множество инструментов и команд, которые специализируются на выполнении именно того, что вы просите.Если возможно, лучше всего их использовать.
Если, тем не менее, вам нужно или вы хотите сделать это внутри своего кода, тогда общий метод для этого, как уже упоминалось, для сохранения текущего состояния ви обрабатывать любой новый персонаж в соответствии с состоянием.Это очень хороший общий метод, и он настоятельно рекомендуется, особенно если требуется больше предварительной обработки.
Если, однако, это абсолютно единственное, что вам нужно делать, чем вы можете сделатьчто-то немного лучше и отказаться от состояния с кодом, подобным этому:
do {
// Initialize things (buffer for the characters maybe) per line
ch = fgetc(input_file);
while ( (ch != EOF) && (ch != '\n') && (ch != '#') ) // Assuming # is the comment character
{
// Do something with 'ch', save it to a buffer, give it to a function - whatever
ch = fgetc(input_file);
}
// If you save the characters to a buffer, this will be a good time to do something with it
while ( (ch != EOF) && (ch != '\n') ) ch = fgetc(input_file); // Read the rest of the line
while ( ch != EOF );