КОМПЬЮТЕРНАЯ ЛИТЕРАТУРА - Турбо С: руководство пользователя. Часть 1 - Стр. 50

Индекс материала
Турбо С: руководство пользователя. Часть 1
Стр. 2
Стр. 3
Стр. 4
Стр. 5
Стр. 6
Стр. 7
Стр. 8
Стр. 9
Стр. 10
Стр. 11
Стр. 12
Стр. 13
Стр. 14
Стр. 15
Стр. 16
Стр. 17
Стр. 18
Стр. 19
Стр. 20
Стр. 21
Стр. 22
Стр. 23
Стр. 24
Стр. 25
Стр. 26
Стр. 27
Стр. 28
Стр. 29
Стр. 30
Стр. 31
Стр. 32
Стр. 33
Стр. 34
Стр. 35
Стр. 36
Стр. 37
Стр. 38
Стр. 39
Стр. 40
Стр. 41
Стр. 42
Стр. 43
Стр. 44
Стр. 45
Стр. 46
Стр. 47
Стр. 48
Стр. 49
Стр. 50
Стр. 51
Стр. 52
Стр. 53
Стр. 54
Стр. 55
Стр. 56
Стр. 57
Стр. 58
Стр. 59
Стр. 60
Стр. 61
Стр. 62
Стр. 63
Стр. 64
Стр. 65
Стр. 66
Стр. 67
Стр. 68
Стр. 69
Все страницы
          main ()                                                               
          {                                                                     
            puts("Hello, world");                                               
          }                                                                     
                                                                                
          Заметим, что в конце строки опущен \n; это не нужно, так как          
     puts сама добавляет этот символ.                                           
                                                                                
          Наоборот, функция putchar записывает единственный символ  на          
     экран и не добавляет \n. Оператор putchar(ch) эквивалентен printf          
     ("%c",ch).                                                                 
                                                                                
          Зачем же  нужно  использовать  puts  и/или  putchar   вместо          
     printf? Одним из доводов является тот, что программа, реализующая          
                                                                                
                                                                                
     printf, гораздо больше; если вы не нуждаетесь в ней (для числово-          
     го вывода или специального форматирования),  то, используя puts и          
     putchar, можно сделать свою программу меньше и быстрее. Например,          
     файл .EXE,  создаваемый компиляцией версии HELLO.C,  использующий          
     puts,  значительно меньше, чем файл .EXE для версии, использующей          
     printf.                                                                    
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                

                         - 411,412 -
                                                                                
               Типы данных.                                                     
     -----------------------------------------------------------------          
                                                                                
          При написании программы,  вы работаете с некоторым видом ин-          
     формации, большинство которой попадает в один из 4-х основных ти-          
     пов: целые числа, числа с плавающей точкой, текст и указатели.             
                                                                                
          Целые - это числа, которые используются для счета ( 1, 2, 5,          
     -21 и 752, например).                                                      
                                                                                
          Числа с  плавающей  точкой могут содержать дробные разряды и          
     экспоненту (5.4567*10^65).  Иногда  их  называют  действительными          
     (вещественными) числами (real).                                            
                                                                                
          Текст состоит из символов (а,  Z, !, 3) и строк ("Это просто          
     проверка").                                                                
                                                                                
          Указатели не хранят информацию;  вместо этого каждый из  них          
     содержит адрес памяти ЭВМ, в которой хранится информация.                  
                                                                                
                                                                                
          Числа с плавающей точкой.                                             
                                                                                
          ------------------------                                              
                                                                                
          Си поддерживает  4  основных типа данных в различных формах.          
     Вы уже использовали 2 из них:  целые (int) и символы (char). Сей-          
     час  будем  модифицировать  последнюю программу для использования          
     3-го типа:  чисел с плавающей точкой (float).  Войдите в редактор          
     Турбо Си и преобразуйте программу к следующему виду:                       
                                                                                
          #include                                                    
                                                                                
          main ()                                                               
          {                                                                     
        char msg[30];                                                           
                                                                                
        strcpy(msg, "Hello, world");                                            
        puts(msg);                                                              
          }                                                                     
                                                                                
          [30], после  msg,  предписывает  компилятору выделить память          
     для 29 символов,  то есть для массива из 29 переменных типа  char          
     (30-е  знакоместо  будет  заполнено нулевым символом - \0 - часто          
     называемым нулевым завершителем или ограничителем  ).  Переменная          
     msg не содержит символьное значение; она хранит адрес (некоторого          
     места в памяти) первого из этих 29 переменных типа char.                   
                                                                                
          Когда компилятор обнаруживает оператор  strcpy(msg,  "Hello,          
     world"), он делает две вещи:                                               
                                                                                
          - Создает строку "Hello,  world", ограниченную (\0) символом          
            (с кодом ASCII 0),в некотором месте файла объектного кода.          
                                                                                
          - Вызывает подпрограмму strcpy,  которая копирует символы из          

                         - 417,418 -
                                                                                
            этой строки по одному в участок памяти,  указываемый пере-          
            менной msg.  Он делает это до тех пор пока не будет скопи-          
            рован нулевой символ в конце строки "Hello, world".                 
                                                                                
          Когда вы вызываете функцию puts(msg),  то ей передается зна-          
     чение msg - адрес первой буквы,  на которую он  указывает.  Затем          
     puts  проверяет,  не  является ли символ по этому адресу нулевым.          
     Если да,  то puts заканчивает работу;  иначе puts  печатает  этот          
     символ, добавляет единицу (1) к адресу и делает проверку на нуле-          
     вой символ снова.                                                          
                                                                                
          Из-за этой зависимости от  нулевого  символа  известно,  что          
     строки в Си называются "завершающиеся нулем",  т.е. они представ-          
     ляют из себя последовательности символов, заканчивающиеся нулевым          
     символом.  Этот подход позволяет снять ограничения с длины строк;          
     строка может быть такой длины, какой позволяет память для ее хра-