t findDelim = line.findCV/” “/
Автор admin Понедельник, 11 мая 2009 11:32
t findDelim = line.findCV/” “/:-”): if(findDelim != string::npos) { // Вывод последней строки и закрытие файла if (!inCode) { cerr « “Lines out of order\n”: exit(EXITJAILURE): } assert(outf): if (printDelims) outf « line « endl: outf.closeO: inCode = false: printDelims = true; } else { findDelim = line.findCV/” “:”); if(findDelim == 0) { // Проверка директивы ‘!’ if(line[3] == ‘!’) { printDelims = false; ++findDelim; // Чтобы пропустить ‘!’ при следующем поиске } // Извлечение имени подкаталога (если оно есть) size_t startOfSubdir = line.find_first_not_of(” \t”. findDelim+3); findDelim = line.find(‘:’. startOfSubdir); if (findDelim == string::npos) { cerr « “missing filename information^” « endl; exit(EXIT_FAILURE); } string subdir: if(findDelim > startOfSubdir) subdir = line.substr(startOfSubdir. findDelim – startOfSubdir); // Извлечение обязательного имени файла size_t startOfFile = findDelim + 1: size_t endOfFile – line.find_first_of(” \t”. startOfFile); if(endOfFile == startOfFile) { Пример обработки строк 123 сегг « “missing filename\n”: exi t(EXIT_FAILURE); } // Все компоненты присутствуют; по
Комментарии закрыты.
Последние комментарии