1 00:00:00,000 --> 00:00:00,610 2 00:00:00,610 --> 00:00:02,960 >> Девід Дж. Малан: Так що я все ще досить захват цієї програми. 3 00:00:02,960 --> 00:00:06,980 Все, що я зробив, це піти від висловлення привіт світ, щоб привіт Давида. 4 00:00:06,980 --> 00:00:08,940 Але є досі немає динамізм у цій програмі. 5 00:00:08,940 --> 00:00:10,530 Там немає користувача введення. 6 00:00:10,530 --> 00:00:12,520 Там просто жорстко вихід. 7 00:00:12,520 --> 00:00:13,760 >> Ну, що ми можемо зробити краще, ніж це. 8 00:00:13,760 --> 00:00:16,750 Давайте повернемося всередину моєї головної функції. 9 00:00:16,750 --> 00:00:22,740 І на цей раз, замість того, жорсткий код Девід, як моє ім'я, дозвольте мені замінити це 10 00:00:22,740 --> 00:00:25,470 лінія з, по-перше, інструкція для користувача. 11 00:00:25,470 --> 00:00:29,090 Printf назвіть своє ім'я. 12 00:00:29,090 --> 00:00:32,790 Так що ми тепер повідомив користувачеві, що ми очікувати від нього або неї, щоб заявити про свої 13 00:00:32,790 --> 00:00:35,840 назвеш, але тепер нам потрібно насправді отримати ім'я користувача. 14 00:00:35,840 --> 00:00:40,020 >> Ну, як і колись, я можу зберігати користувача назвати, в кінцевому рахунку, у змінній 15 00:00:40,020 --> 00:00:40,920 тип рядок. 16 00:00:40,920 --> 00:00:43,420 І я буду називати це, як і колись, ім'я. 17 00:00:43,420 --> 00:00:47,850 Але я зараз потрібно призначити, як з Оператор присвоювання, деяке значення для 18 00:00:47,850 --> 00:00:48,760 ця змінна. 19 00:00:48,760 --> 00:00:51,990 Але на цей раз, я не хочу, щоб жорсткий код це, як я робив раніше цитуючи, 20 00:00:51,990 --> 00:00:53,150 кінець цитати Давида. 21 00:00:53,150 --> 00:00:57,260 Швидше, я хочу, щоб динамічно отримати користувачі вхід з їх клавіатури і 22 00:00:57,260 --> 00:01:00,670 потім зберегти це значення всередині ця змінна називається ім'я. 23 00:01:00,670 --> 00:01:04,530 >> Ну, як це зробити, я можу викликати Функція, функція, яка відбувається з 24 00:01:04,530 --> 00:01:06,640 назвати взяти мотузку. 25 00:01:06,640 --> 00:01:12,020 Але ця функція, так само, як рядки, Сам, насправді не приходять з С. 26 00:01:12,020 --> 00:01:17,380 Швидше, співробітники CS50 заявив, у файлі з ім'ям CS50.h, функція 27 00:01:17,380 --> 00:01:21,150 називається Get Рядок, мета якого в житті , Щоб дозволити користувачеві ввести його 28 00:01:21,150 --> 00:01:24,850 або її ім'я на клавіатурі, а потім ця функція, отримати рядком, повертається 29 00:01:24,850 --> 00:01:28,540 що значення, так би мовити, з правого Права частина цього виразу 30 00:01:28,540 --> 00:01:31,020 в лівій стороні цього виразу. 31 00:01:31,020 --> 00:01:34,340 >> Давайте збережіть файл і скомпілювати цю програму. 32 00:01:34,340 --> 00:01:37,510 Зробити привет-2, Enter. 33 00:01:37,510 --> 00:01:38,950 Ми повернулися в нашому миготливою рядку. 34 00:01:38,950 --> 00:01:42,340 Тепер я збираюся йти вперед і запустити ./hello-2. 35 00:01:42,340 --> 00:01:46,500 Я дійсно запропоновано висловити своє ім'я, і я буду робити саме це, D-А-В-І-Д. 36 00:01:46,500 --> 00:01:50,230 Введіть, і там у нас є програма що, знову ж, друкує привіт Девід. 37 00:01:50,230 --> 00:01:54,250 >> Але на цей раз я стверджую, що Девід динамічно виводиться на екран, 38 00:01:54,250 --> 00:01:56,430 основі того, що я сам тільки що ввели. 39 00:01:56,430 --> 00:02:01,000 Так давайте перевіримо цю гіпотезу і повторний показ ця програма з привет-2. 40 00:02:01,000 --> 00:02:04,030 Давайте висловити своє ім'я, це Час, як Аліса. 41 00:02:04,030 --> 00:02:07,590 І справді, я вітав з Привіт Аліса або будь-який інший 42 00:02:07,590 --> 00:02:08,840 назвати, якщо на те пішло. 43 00:02:08,840 --> 00:02:09,760