1 00:00:00,000 --> 00:00:00,440 2 00:00:00,440 --> 00:00:00,860 >> СПИКЕР 1: Хорошо. 3 00:00:00,860 --> 00:00:03,260 Это последняя программа была немного скучной. 4 00:00:03,260 --> 00:00:05,510 Давайте пойдем дальше и персонализировать это немного. 5 00:00:05,510 --> 00:00:07,710 Вместо того, чтобы сказать привет мир, почему бы нам не пойти дальше 6 00:00:07,710 --> 00:00:09,680 и сказать, привет Дэвид? 7 00:00:09,680 --> 00:00:12,500 Ну, как это сделать, я мог подойти это в несколько способов. 8 00:00:12,500 --> 00:00:15,760 Я мог бы, конечно, просто трудно код Дэвид, но это еще не все, что 9 00:00:15,760 --> 00:00:17,650 принципиально отличается от последней версии. 10 00:00:17,650 --> 00:00:21,430 Так давайте шаг вперед, отменить, что изменить, и вместо вставить новый 11 00:00:21,430 --> 00:00:23,980 строка кода, где линия пять раз был. 12 00:00:23,980 --> 00:00:28,970 >> В частности, то, что я собираюсь сделать здесь это добавить в имени строки, тем самым 13 00:00:28,970 --> 00:00:30,920 объявления переменной. 14 00:00:30,920 --> 00:00:34,240 Обратите внимание, что в C, не только у вас есть чтобы присвоить переменной имя, которое в 15 00:00:34,240 --> 00:00:38,110 этот случай имя, вы также должны указать, какой тип это. 16 00:00:38,110 --> 00:00:41,970 Мы увидим, другие виды в скором времени, среди Them целые и с плавающей точкой 17 00:00:41,970 --> 00:00:46,480 ценности и больше, но на данный момент, строка это просто слово или фраза, более 18 00:00:46,480 --> 00:00:49,340 формально, последовательность нуля или более символов. 19 00:00:49,340 --> 00:00:53,760 Поэтому в данный момент, эта линия пять является говоря: дайте мне переменную имя 20 00:00:53,760 --> 00:00:56,560 , тип данных является строка. 21 00:00:56,560 --> 00:01:00,460 >> Теперь я хочу, чтобы сохранить значение там, и сделать это в C, мы используем равно 22 00:01:00,460 --> 00:01:03,030 подписать, иначе известный как Оператор присваивания. 23 00:01:03,030 --> 00:01:04,860 Так что я собираюсь поступить следующим образом. 24 00:01:04,860 --> 00:01:10,220 Равно цитата, конец цитаты, D-А-В-И-Д, закрытая цитата, точка с запятой. 25 00:01:10,220 --> 00:01:15,595 Чистый эффект в соответствии пяти в настоящее время является объявить строку, D-A-V-I-D, хранения 26 00:01:15,595 --> 00:01:19,480 это с правой стороны этот выражение в переменную на 27 00:01:19,480 --> 00:01:21,480 Левая часть этого выражения. 28 00:01:21,480 --> 00:01:25,970 Таким образом, к концу этой линии, мы имеем D-A-V-I-D хранится внутри переменной 29 00:01:25,970 --> 00:01:27,450 называется имя. 30 00:01:27,450 --> 00:01:28,910 >> Теперь давайте использовать эту переменную. 31 00:01:28,910 --> 00:01:35,010 На линии шесть, я собираюсь заменить мир с заполнителем. 32 00:01:35,010 --> 00:01:39,960 % S определяется в соответствии с документация для Printf как 33 00:01:39,960 --> 00:01:41,690 Место для строки. 34 00:01:41,690 --> 00:01:44,620 Другими словами, это способ информирования Е, что я собираюсь поставить 35 00:01:44,620 --> 00:01:47,930 другое значение здесь, но позвольте мне сказать вам через минуту, что 36 00:01:47,930 --> 00:01:49,180 это будет. 37 00:01:49,180 --> 00:01:52,800 Теперь, ну и дальше рассказывать Printf что это значение будет? 38 00:01:52,800 --> 00:01:56,850 >> Ну, мне необходимо предоставить Printf с Второй аргумент, а для этого, я 39 00:01:56,850 --> 00:02:00,460 нужно поставить запятую после первой такой Аргумент, который был в этом цитирует 40 00:02:00,460 --> 00:02:04,990 строка, а затем мне нужно указать, что Значение я хочу подключить к, что 41 00:02:04,990 --> 00:02:07,010 заполнитель первого аргумента. 42 00:02:07,010 --> 00:02:10,880 Таким образом, название моей переменной является, Конечно, имя, поэтому достаточно ввести 43 00:02:10,880 --> 00:02:14,000 "Имя" в качестве второго аргумент Е. 44 00:02:14,000 --> 00:02:15,070 Теперь не вводить в заблуждение. 45 00:02:15,070 --> 00:02:20,440 Несмотря на то, является запятая внутри кавычках, то есть на самом деле 46 00:02:20,440 --> 00:02:24,370 внутри строки, чтобы он не отделить один аргумент от другого. 47 00:02:24,370 --> 00:02:28,740 Только на этот запятая вот за пределами этого кавычках фактически отделяет 48 00:02:28,740 --> 00:02:31,700 Первый аргумент Е от второй аргумент. 49 00:02:31,700 --> 00:02:34,270 >> Давайте теперь скомпилировать эту программу. 50 00:02:34,270 --> 00:02:36,500 Сделать привет один. 51 00:02:36,500 --> 00:02:39,570 О боже мой, пять ошибки, генерируемые, и мой програмы 52 00:02:39,570 --> 00:02:41,100 только семь линий долго. 53 00:02:41,100 --> 00:02:44,720 Ну, как всегда, не смотрите на последний ошибок на вашем экране. 54 00:02:44,720 --> 00:02:47,960 Посмотрите на самый первый, потому что, возможно, есть каскадный эффект в результате чего 55 00:02:47,960 --> 00:02:51,600 просто одна ошибка наверху создан Появление более ошибок, чем 56 00:02:51,600 --> 00:02:52,570 на самом деле. 57 00:02:52,570 --> 00:02:56,620 >> Итак, позвольте мне прокрутку вверх, и первый такой полужирный ошибки здесь является использование 58 00:02:56,620 --> 00:02:59,140 необъявленный идентификатор строка. 59 00:02:59,140 --> 00:03:00,630 Вы имели в виду стандарт в? 60 00:03:00,630 --> 00:03:01,990 Ну нет, я этого не сделал. 61 00:03:01,990 --> 00:03:06,700 Я имел в виду строку, но оказывается, что я забыл, что строка не существует как 62 00:03:06,700 --> 00:03:10,830 тип данных, технически в С. Концептуально она существует, но слово 63 00:03:10,830 --> 00:03:16,210 "Строка" существует только потому, что CS50 Сотрудники заявили его, так сказать, 64 00:03:16,210 --> 00:03:18,160 в файле, который мы сами написали. 65 00:03:18,160 --> 00:03:22,540 В самом деле, так же, как кто-то давно заявил функцию Е в файле 66 00:03:22,540 --> 00:03:28,310 называется Стандартный io.h, так и сделали мы Сотрудники заявляют строку как тип данных в 67 00:03:28,310 --> 00:03:32,470 файл, который, не удивительно, называется CS50.H. 68 00:03:32,470 --> 00:03:36,340 >> Так давайте вернемся к началу моей программировать и сообщить компилятору, что 69 00:03:36,340 --> 00:03:40,130 я не только хочу использовать символ Строка, я также хочу, чтобы обучить 70 00:03:40,130 --> 00:03:42,160 компилятор о том, что означает, что символ. 71 00:03:42,160 --> 00:03:47,010 И сделать это достаточно просто, я могу пойти назад до линии один, вставить новую строку 72 00:03:47,010 --> 00:03:54,070 здесь, и добавить, "включают CS50.H," также между угловыми скобками. 73 00:03:54,070 --> 00:03:58,170 Эта инструкция, как и что теперь на второй линии, собирается сообщить 74 00:03:58,170 --> 00:04:02,460 компилятор, что она должна включать в себя Содержание CS50.H где бы они ни 75 00:04:02,460 --> 00:04:06,620 в моем жестком диске внутри моей программы, тем самым воспитания компилятор, чтобы 76 00:04:06,620 --> 00:04:09,050 что подразумевается под строкой. 77 00:04:09,050 --> 00:04:13,420 >> Давайте перекомпилировать программу после сохранения изменений. 78 00:04:13,420 --> 00:04:15,500 Сделать привет один. 79 00:04:15,500 --> 00:04:16,440 Enter. 80 00:04:16,440 --> 00:04:17,730 Намного лучше. 81 00:04:17,730 --> 00:04:23,760 Теперь у меня есть мигающий запрос, в котором я можно ввести, ". / привет друг", и вуаля. 82 00:04:23,760 --> 00:04:25,010 Здравствуйте Дэвид. 83 00:04:25,010 --> 00:04:26,402