|
Символьные массивыИ, наконец, нам нужна программа main, для управления getline и copy. Вот что мы получили в результате. # Include # Define MAXLINE 1000 / * максимальная длина строки ввода * / int getline (char line [] int maxline); void copy (char to [] char from []); / * Выводит длинный строка * / main () { int len; / * длина текущей строки * / int max; / * самая найдена длина * / char line [MAXLINE]; / * текущий строка * / char longest [MAXLINE]; / * длинный строка сохраняется здесь * / max = 0; while ((len = getline (line, MAXLINE))> 0) if (len> max) { max = len; copy (longest, line); } if (max> 0) / * было найдено строку * / printf ("% s", longest); return 0; } / * Getline: считывает строку в s, возвращает длину * / int getline (char s [], int lim) { int c, i; for (i = 0; i if (c == '\ n') { s [i] = c; + + I; } s [i] = '\ 0'; return i; } / * Copy: копирует from до to; предполагает, что to достаточно большой * / void copy (char to [] char from []) { int i; i = 0; while ((to [i] = from [i])! = '\ 0') + + I; } Функции getline и copy объявлено в самом начале программы, которую, как мы предполагаем, размещен в одном файле. main и getline общаются через пару аргументов и возвращаемое значение. В getline, аргументы объявлено строкой int getline (char s [], int lim); указывающий на то, что первый аргумент s является массивом, а второй, lim - целым числом. Содержание указания размера массива при объявлении заключается в том, что это отводит место для хранения. Длину массива s не обязательно указывать в getline, поскольку размер уже заданы в main. getline использует return, чтобы передать значение обратно вызывающего, так же как мы это видели в функции power. В этой строке также указано, что getline возвращает int; поскольку int - это стандартный тип возврата, его можно было бы опустить. Некоторые функции возвращают полезные значения - другие, такие как copy, используются только ради их эффекта и не возвращают никаких значений. Типом возврата copy есть void, что явно указывает на то, что никакого значения не возвращается. Другие статьи по теме: - Внешние переменные и область действия- Функции и структура программ - Символьные массивы - Введение в c++ - Типы, операторы и выражения |
|
2006-2024 © SMTI.RU Главная страница | Связаться с нами |