1 00:00:00,000 --> 00:00:11,050 2 00:00:11,050 --> 00:00:13,351 >> Роб Боуден: Це більш комфортно розділ, 3 00:00:13,351 --> 00:00:16,309 але це не означає, що якщо вас відчувати, що ви не зручніше 4 00:00:16,309 --> 00:00:18,420 Ви не дізнаєтеся речі тут. 5 00:00:18,420 --> 00:00:20,600 Так що давайте почнемо. 6 00:00:20,600 --> 00:00:22,819 Чи є у вас слайди ладиться в речі. 7 00:00:22,819 --> 00:00:24,360 Чи можу я збирався просто взяти його прямо зараз? 8 00:00:24,360 --> 00:00:25,680 9 00:00:25,680 --> 00:00:26,450 Перемикання ноутбуки. 10 00:00:26,450 --> 00:00:30,470 11 00:00:30,470 --> 00:00:32,950 >> Елісон: Ви не хочете, щоб представтесь, Роб? 12 00:00:32,950 --> 00:00:34,090 >> Роб Боуден: О, я Роба. 13 00:00:34,090 --> 00:00:35,182 14 00:00:35,182 --> 00:00:37,470 Це мій п'ятий рік TF-ING CS50. 15 00:00:37,470 --> 00:00:38,760 16 00:00:38,760 --> 00:00:39,650 >> Габріель: Я Гавриїл. 17 00:00:39,650 --> 00:00:41,610 Я керівник TF з CS50. 18 00:00:41,610 --> 00:00:44,009 Я був TF торік і цього року. 19 00:00:44,009 --> 00:00:46,675 Елісон: А я Елісон, і це мій другий рік TF-ING CS50. 20 00:00:46,675 --> 00:00:48,510 21 00:00:48,510 --> 00:00:50,825 >> Роб Боуден: Гаразд, так ця річ зліва, 22 00:00:50,825 --> 00:00:52,250 сподіваюся, ви бачили це раніше. 23 00:00:52,250 --> 00:00:54,112 Якщо не через вас скачати його для себе, 24 00:00:54,112 --> 00:00:55,570 Ви б бачили його в лекції. 25 00:00:55,570 --> 00:00:56,590 26 00:00:56,590 --> 00:01:01,320 Так що це CS50 прилад, і він зробив кілька з опису нього 27 00:01:01,320 --> 00:01:01,880 в лекції. 28 00:01:01,880 --> 00:01:06,890 Але в основному це просто ви працюють під управлінням операційної 29 00:01:06,890 --> 00:01:10,550 Система у вашій операційній Система так що ми можемо дати вам 30 00:01:10,550 --> 00:01:12,540 програми без необхідності турбуватися, про це 31 00:01:12,540 --> 00:01:15,989 працюватиме як на Windows, і Mac, або якщо деякі з вас 32 00:01:15,989 --> 00:01:17,280 вже з використанням Linux, Linux. 33 00:01:17,280 --> 00:01:18,532 34 00:01:18,532 --> 00:01:20,240 Це просто, як передбачається, стати загальним ігри 35 00:01:20,240 --> 00:01:23,010 поле, так що кожен має точно такий же середовища. 36 00:01:23,010 --> 00:01:25,344 >> Так що якщо у вас є не скачав це вже, 37 00:01:25,344 --> 00:01:28,510 Ви повинні завантажити його, бо ти знадобиться його для безлічі завдань. 38 00:01:28,510 --> 00:01:32,335 І це два гігабайти скачати, так це може зайняти деякий час. 39 00:01:32,335 --> 00:01:33,780 На Гарварді він буде йти швидко. 40 00:01:33,780 --> 00:01:35,870 41 00:01:35,870 --> 00:01:37,440 Так CS50 прилад. 42 00:01:37,440 --> 00:01:41,980 >> Тепер на початку, ми збираємося говорити про просто набір командного рядка 43 00:01:41,980 --> 00:01:46,880 матеріал, і так з тим, що я маю на увазі роботи в цій маленькій навколишнього середовища протягом тут. 44 00:01:46,880 --> 00:01:53,230 І зауважте, всі речі Я говорю тут і зараз 45 00:01:53,230 --> 00:01:56,900 працюватимуть, якщо ви всередині Термінал всередині машини, 46 00:01:56,900 --> 00:02:00,790 або якщо ви всередині вікно Gedit термінал 47 00:02:00,790 --> 00:02:02,090 всередині приладу. 48 00:02:02,090 --> 00:02:03,770 Так ці середовища є ідентичними. 49 00:02:03,770 --> 00:02:04,940 50 00:02:04,940 --> 00:02:07,270 >> Але я збираюся піти в третій маршрут. 51 00:02:07,270 --> 00:02:12,200 І зверніть увагу, тут це трохи IP адреса прямо тут. 52 00:02:12,200 --> 00:02:15,940 Таким чином, ви не повинні зробити це, але це IP- 53 00:02:15,940 --> 00:02:19,700 address-- тепер, якщо i-- винятком він заблокований за допомогою цієї речі. 54 00:02:19,700 --> 00:02:22,790 55 00:02:22,790 --> 00:02:27,000 ОК, так що IP-адресу більше в терміналі 56 00:02:27,000 --> 00:02:31,090 here-- так цей термінал за ось термінал в моїй Mac. 57 00:02:31,090 --> 00:02:34,540 Так що це жодною мірою в даний час пов'язаний з приладом на всіх. 58 00:02:34,540 --> 00:02:39,360 І якщо ви на Windows, то ви знадобиться що-небудь скачати 59 00:02:39,360 --> 00:02:44,430 спеціально для цього, зокрема, люди, як правило використовувати шпаклівки, Р-U-Т-Т-Y. 60 00:02:44,430 --> 00:02:50,700 >> Так що я збираюся зробити, це ввести SSH, а потім, що IP-адресу. 61 00:02:50,700 --> 00:02:54,030 Ну, jharvard в той IP-адресу. 62 00:02:54,030 --> 00:03:00,150 Так 192.168.24.220. 63 00:03:00,150 --> 00:03:02,127 Це страшно повідомлення, ігнорувати його. 64 00:03:02,127 --> 00:03:02,710 Просто введіть да. 65 00:03:02,710 --> 00:03:04,550 66 00:03:04,550 --> 00:03:06,030 Це CS50 в коробці. 67 00:03:06,030 --> 00:03:07,460 Він просить пароль. 68 00:03:07,460 --> 00:03:11,910 >> І так в багатьох умовах, де він просить ввести пароль, [нерозбірливо]. 69 00:03:11,910 --> 00:03:15,670 У нас є багато питань, де він каже, що насправді не набравши. 70 00:03:15,670 --> 00:03:20,011 Вона не показує вам характери пароль при введенні, в усякому разі, 71 00:03:20,011 --> 00:03:23,010 в операційній системі, тому що, якщо хтось шукає через плече 72 00:03:23,010 --> 00:03:25,870 і вони бачать зірки зірки зірка зірка, то вони 73 00:03:25,870 --> 00:03:28,640 знаю, що ваш пароль це чотири символу. 74 00:03:28,640 --> 00:03:32,660 Таким чином, ідея це попросить Ви для вашого пароля, типу. 75 00:03:32,660 --> 00:03:34,490 Це не збирається показувати Ви герої, 76 00:03:34,490 --> 00:03:36,090 але це насправді прийняти їх. 77 00:03:36,090 --> 00:03:39,210 В цьому випадку, в будь-який час вам коли-небудь побачити запрошення ввести пароль 78 00:03:39,210 --> 00:03:42,280 справу з пристроєм, Пароль буде малиновий. 79 00:03:42,280 --> 00:03:43,270 Так малиновий. 80 00:03:43,270 --> 00:03:44,730 81 00:03:44,730 --> 00:03:50,550 >> І ось всередині цього Вікно, яке знаходиться в моєму Mac, 82 00:03:50,550 --> 00:03:54,120 Я в основному мають точно такий же вигляд 83 00:03:54,120 --> 00:03:57,040 як всередині терміналу в приладі. 84 00:03:57,040 --> 00:03:58,470 Таким чином, ви не повинні робити це. 85 00:03:58,470 --> 00:04:01,300 Ви можете робити все, що хочу всередині машини. 86 00:04:01,300 --> 00:04:05,140 Я майже ніколи не роблять що-небудь в приладі. 87 00:04:05,140 --> 00:04:09,440 Я майже завжди мінімізувати, що і зараз Я працюю SSH в прилад. 88 00:04:09,440 --> 00:04:11,480 89 00:04:11,480 --> 00:04:14,180 >> У всякому разі, якщо ви є повільний комп'ютер, 90 00:04:14,180 --> 00:04:15,820 Ви можете помітити різницю. 91 00:04:15,820 --> 00:04:18,839 Я роблю це, тому що я волію це вікно терміналу. 92 00:04:18,839 --> 00:04:20,881 Він має деякі функції, такі як Я можу розділити вікно, 93 00:04:20,881 --> 00:04:22,672 і тепер я можу SSH в через прилад. 94 00:04:22,672 --> 00:04:24,105 Я отримав два SSH відбувається відразу. 95 00:04:24,105 --> 00:04:28,030 96 00:04:28,030 --> 00:04:32,250 Якщо ваш комп'ютер є особливо повільним і ви працюєте в приладі, 97 00:04:32,250 --> 00:04:35,200 і ви розумієте, що це дійсно гальмує, все. 98 00:04:35,200 --> 00:04:38,220 Як правило, набагато швидше, якщо ви SSH-е изд в. 99 00:04:38,220 --> 00:04:40,960 Але в іншому випадку ви можете працювати в будь-якому випадку. 100 00:04:40,960 --> 00:04:42,388 >> АУДИТОРІЯ: Що це означає SSH? 101 00:04:42,388 --> 00:04:43,820 102 00:04:43,820 --> 00:04:47,479 >> Роб Боуден: Безпечні снаряди, щось подібне? 103 00:04:47,479 --> 00:04:48,270 Що SSH на увазі? 104 00:04:48,270 --> 00:04:54,214 105 00:04:54,214 --> 00:04:55,130 Габріель: Безпечна оболонка. 106 00:04:55,130 --> 00:04:56,463 Елісон: Це просто безпечна оболонка. 107 00:04:56,463 --> 00:04:57,720 Роб Боуден: Безпечна оболонка. 108 00:04:57,720 --> 00:05:03,700 Це протокол, який you-- це безпечний протокол, так шифрується. 109 00:05:03,700 --> 00:05:06,850 Люди не можуть шпигувати мережі і подивимося, що ви говорите, до чого 110 00:05:06,850 --> 00:05:08,120 Ви SSH-е изд к. 111 00:05:08,120 --> 00:05:12,900 І справді, в старовину дні CS50, тому в 2009 112 00:05:12,900 --> 00:05:19,300 коли я був на першому курсі, так що Ви працювали на CS50 проблемних наборів, 113 00:05:19,300 --> 00:05:22,490 було у вас SSH-е изд, щоб якийсь сервер що ми дали вам доступ к, 114 00:05:22,490 --> 00:05:23,497 і ви працювали там. 115 00:05:23,497 --> 00:05:25,330 Таким чином, ви не повинні це Графічний прилад. 116 00:05:25,330 --> 00:05:26,160 Ви не повинні Gedit. 117 00:05:26,160 --> 00:05:28,930 У вас не було всі ці речі, які Ви могли візуально точку та натисніть. 118 00:05:28,930 --> 00:05:30,346 Ви повинні були працювати в цьому інтерфейсі. 119 00:05:30,346 --> 00:05:31,580 120 00:05:31,580 --> 00:05:33,716 Я віддаю перевагу працювати в даному інтерфейсі. 121 00:05:33,716 --> 00:05:36,090 Так частина того, що ми збираємося щоб йти протягом прямо зараз 122 00:05:36,090 --> 00:05:39,560 купа Команди, які ви повинні 123 00:05:39,560 --> 00:05:42,095 почати ознайомлення з як Ви просувається в курсі. 124 00:05:42,095 --> 00:05:43,190 125 00:05:43,190 --> 00:05:45,790 І, чесно кажучи, як тільки ви звикнути до них, він 126 00:05:45,790 --> 00:05:48,220 так набагато швидше, щоб працювати в цьому середовищі 127 00:05:48,220 --> 00:05:53,690 ніж це працювати з шукачем, перетягування і натиснувши речі. 128 00:05:53,690 --> 00:05:55,340 129 00:05:55,340 --> 00:05:57,210 >> Так ось ми тут. 130 00:05:57,210 --> 00:06:01,779 Тепер я просто SSH-е изд в, і так за замовчуванням location-- вас 131 00:06:01,779 --> 00:06:04,820 бачив деякі з цих команд в класі, але ми підемо по всім з них знову. 132 00:06:04,820 --> 00:06:08,060 За замовчуванням ми в це домашній каталог. 133 00:06:08,060 --> 00:06:11,520 І каталог, просто інше слово для папки. 134 00:06:11,520 --> 00:06:13,310 Таким чином, ми знаходимося в домашньому каталозі. 135 00:06:13,310 --> 00:06:15,889 Введіть Ls, список файлів В цьому каталозі. 136 00:06:15,889 --> 00:06:17,430 Я, мабуть, створили blah.c раніше. 137 00:06:17,430 --> 00:06:19,120 138 00:06:19,120 --> 00:06:20,472 Тому у нас є каталог робочого столу. 139 00:06:20,472 --> 00:06:21,930 Ви помітите підсвічування синтаксису? 140 00:06:21,930 --> 00:06:27,400 141 00:06:27,400 --> 00:06:32,900 Світло-блакитний підсвічування вказує каталог і прямо білий 142 00:06:32,900 --> 00:06:34,380 вказує тільки простий файл. 143 00:06:34,380 --> 00:06:35,410 144 00:06:35,410 --> 00:06:37,690 Так що збираємося бути деякі інші кольори, які ви бачите. 145 00:06:37,690 --> 00:06:41,240 Виконуваний файл, ймовірно, буде щоб бути зеленим або щось подібне. 146 00:06:41,240 --> 00:06:44,820 Отже, ми знаходимося в домашньому каталозі. 147 00:06:44,820 --> 00:06:48,970 >> Тепер, якщо я хочу піти в інше каталог, CD є команда, яку я хочу. 148 00:06:48,970 --> 00:06:52,720 Так змінити каталог, а потім ви передати ім'я каталогу 149 00:06:52,720 --> 00:06:54,020 що ви хочете піти в. 150 00:06:54,020 --> 00:06:55,780 Так ось у нас є чотири варіанти. 151 00:06:55,780 --> 00:07:03,397 Я можу піти в закачувань, і тепер ми бачимо, тут він оновив цей дужках 152 00:07:03,397 --> 00:07:04,480 сказати, що я в ~ / завантаження. 153 00:07:04,480 --> 00:07:05,620 154 00:07:05,620 --> 00:07:06,800 >> Так що ж таке Тільда? 155 00:07:06,800 --> 00:07:10,640 Це скорочення для ваш домашній каталог. 156 00:07:10,640 --> 00:07:15,260 Таким чином, практично все, що ви робите збирається бути по відношенню до вашої домашньої директорії, 157 00:07:15,260 --> 00:07:20,620 і PWD просто команда Я використовую один раз на рік, що 158 00:07:20,620 --> 00:07:22,420 просто друкує поточний каталог. 159 00:07:22,420 --> 00:07:25,730 Отже, ви бачите тут, що ~ / Завантажень дійсно вирішує 160 00:07:25,730 --> 00:07:26,896 к / будинки / jharvard / завантаження. 161 00:07:26,896 --> 00:07:29,320 162 00:07:29,320 --> 00:07:32,230 Так / будинку / jharvard мій домашній каталог. 163 00:07:32,230 --> 00:07:33,700 164 00:07:33,700 --> 00:07:39,400 >> Таким чином, ми можемо кд точка точка. 165 00:07:39,400 --> 00:07:47,800 Тепер точка точка знаходиться спеціальний каталог, який завжди відноситься до однієї директорії вгору. 166 00:07:47,800 --> 00:07:51,730 Так що, якщо я перебуваю в ~ / завантаження, потім компакт точки точка збирається довести мене до тильди. 167 00:07:51,730 --> 00:07:52,950 168 00:07:52,950 --> 00:07:55,490 Що ми думаємо кд точка точка збирається принести мені тепер? 169 00:07:55,490 --> 00:07:58,740 170 00:07:58,740 --> 00:08:00,570 Це буде приносити мені / будинку. 171 00:08:00,570 --> 00:08:04,450 Так Тільда ​​по робочій директорії друку, Я в нині / будинку / jharvard. 172 00:08:04,450 --> 00:08:06,060 173 00:08:06,060 --> 00:08:08,820 один каталог вгору від цього, Тепер він говорить тут / додому. 174 00:08:08,820 --> 00:08:12,330 175 00:08:12,330 --> 00:08:17,180 >> Тепер кд точка точка. 176 00:08:17,180 --> 00:08:20,910 Тепер я перебуваю в кореневому каталозі, і ви не можете зробити це знову. 177 00:08:20,910 --> 00:08:23,340 Ви просто залишитися в Кореневої каталог назавжди. 178 00:08:23,340 --> 00:08:26,700 Кореневої каталог має цілий букет речі, які, якщо ви хочете поглянути на, 179 00:08:26,700 --> 00:08:27,410 ти можеш. 180 00:08:27,410 --> 00:08:29,700 Наприклад, якщо я йду в бункер, який містить 181 00:08:29,700 --> 00:08:35,789 всі ці виконавчі файли, такі як Л.С., і кд, і всі ці речі. 182 00:08:35,789 --> 00:08:38,630 Таким чином, ці команди повинні існує десь в системі, 183 00:08:38,630 --> 00:08:40,820 і це в каталозі / бен. 184 00:08:40,820 --> 00:08:44,530 Але майже все, що ви робите це буде від вашої домашньої директорії. 185 00:08:44,530 --> 00:08:49,490 І кд без будь-яких аргументів б то не було, Ви могли б сказати, кд ~, не потрібно. 186 00:08:49,490 --> 00:08:51,810 кд збирається принести вам повернутися до вашої домашньої директорії. 187 00:08:51,810 --> 00:08:53,170 188 00:08:53,170 --> 00:08:54,230 >> Один останній. 189 00:08:54,230 --> 00:09:00,200 кд - збирається повернути вас до останній каталог, що ви були в. 190 00:09:00,200 --> 00:09:04,080 Так що я просто cd'd два рази поспіль, так що моя Останній каталог був домашній каталог. 191 00:09:04,080 --> 00:09:11,520 Якщо я йду в слеш відро для сміття, і тепер давайте і в користувачем. 192 00:09:11,520 --> 00:09:12,550 193 00:09:12,550 --> 00:09:13,280 Частка користувачів. 194 00:09:13,280 --> 00:09:14,840 195 00:09:14,840 --> 00:09:15,940 Підемо в акцію користувача. 196 00:09:15,940 --> 00:09:17,140 Тепер я тепер в акцію користувача. 197 00:09:17,140 --> 00:09:19,320 кд - ще у відро для сміття. 198 00:09:19,320 --> 00:09:22,980 Таким чином, це стає особливо корисним коли ви have-- і він буде перемикатися. 199 00:09:22,980 --> 00:09:25,660 Так частка користувачів, задньої бен, частка відро для сміття. 200 00:09:25,660 --> 00:09:27,250 >> Таким чином, це стає корисним. 201 00:09:27,250 --> 00:09:33,150 Ви можете знайти собі того, багато, багато, багато вкладених каталогів. 202 00:09:33,150 --> 00:09:37,370 І ви хочете, щоб щось зробити реальний швидкий у верхній директорії. 203 00:09:37,370 --> 00:09:40,330 Ви йдете в цей каталог, зробити зміни і все в такому дусі, що, 204 00:09:40,330 --> 00:09:42,400 і тепер ви хочете піти туди, де ви були. 205 00:09:42,400 --> 00:09:43,660 кд -. 206 00:09:43,660 --> 00:09:47,320 Я завжди засмучений коли я, виявляється, йдете 207 00:09:47,320 --> 00:09:49,630 для цього каталогу I хотів зробити роботу в. 208 00:09:49,630 --> 00:09:52,670 Я завжди засмучуються, коли я зробив вона в два етапи, а не один крок, 209 00:09:52,670 --> 00:09:55,715 тому що це означає, що компакт-диск - збирається привести в цій проміжній місці 210 00:09:55,715 --> 00:09:57,010 замість де я хочу піти. 211 00:09:57,010 --> 00:09:59,350 212 00:09:59,350 --> 00:10:01,450 >> Отже, ми бачимо всі файли списків. 213 00:10:01,450 --> 00:10:03,300 Ми знаємо, як обійти сих пір. 214 00:10:03,300 --> 00:10:09,900 Так що тепер давайте поговоримо про редагування файлів. 215 00:10:09,900 --> 00:10:18,790 Таким чином, в цьому, звичайно, ви майже завжди використовуватиме Gedit. 216 00:10:18,790 --> 00:10:24,410 Якщо ви хочете, ви можете зробити наступний крок і почати вивчати текст командного рядка 217 00:10:24,410 --> 00:10:25,240 редактор. 218 00:10:25,240 --> 00:10:27,560 Так існують різні варіанти. 219 00:10:27,560 --> 00:10:31,760 >> І ті, які, ймовірно, буде ставлення до вас, 220 00:10:31,760 --> 00:10:35,340 у нас є Nano, Vim і Emacs. 221 00:10:35,340 --> 00:10:40,196 Так Nano є новачки командного рядка текстовий редактор. 222 00:10:40,196 --> 00:10:42,985 Так Nano підемо на blah.c я створив раніше. 223 00:10:42,985 --> 00:10:44,030 224 00:10:44,030 --> 00:10:46,480 Це просто це стандартний файл C. 225 00:10:46,480 --> 00:10:51,540 І ви побачите цілу купу речей відбувається в нижній частині екрана, 226 00:10:51,540 --> 00:10:54,100 і, мабуть, blah.c містить цей код на Сі. 227 00:10:54,100 --> 00:10:55,420 228 00:10:55,420 --> 00:11:00,330 >> Таким чином, в даному конкретному редактора, те, що він говорив на bottom-- 229 00:11:00,330 --> 00:11:06,290 Тепер цей символ вставки, ми бачимо, цей ^ G, ^ X, ^ O. 230 00:11:06,290 --> 00:11:10,310 Так, що практично у всіх Контекст, що ви бачите, 231 00:11:10,310 --> 00:11:13,530 Ви могли б бачити, що символ курсора в в інших місцях в Інтернеті, на переповнення стека, 232 00:11:13,530 --> 00:11:14,450 щось подібне. 233 00:11:14,450 --> 00:11:16,970 Це майже завжди означає контролювати. 234 00:11:16,970 --> 00:11:21,590 Таким чином, щоб вийти я хочу зробити Контроль X. управління X, виходить. 235 00:11:21,590 --> 00:11:22,750 236 00:11:22,750 --> 00:11:26,855 І я можу використовувати мою стрілку Клавіші для переміщення. 237 00:11:26,855 --> 00:11:28,010 238 00:11:28,010 --> 00:11:31,015 Зверніть увагу, я не можу вказати і натисніть легко. 239 00:11:31,015 --> 00:11:33,000 240 00:11:33,000 --> 00:11:35,010 Ви повинні використовувати ваш стрілку Клавіші для переміщення. 241 00:11:35,010 --> 00:11:36,950 Там може бути настройка щоб кликати. 242 00:11:36,950 --> 00:11:40,000 >> Але давайте зробимо деякі зміни. 243 00:11:40,000 --> 00:11:42,100 Тепер контроль X йти вихід. 244 00:11:42,100 --> 00:11:44,120 Це скаже Зберегти змінений буфер. 245 00:11:44,120 --> 00:11:47,900 Тепер підказка, у до да, н для немає. 246 00:11:47,900 --> 00:11:49,900 Контроль C для відміни. 247 00:11:49,900 --> 00:11:50,780 Я просто скажу, да. 248 00:11:50,780 --> 00:11:51,709 Ім'я записи в файл. 249 00:11:51,709 --> 00:11:53,500 За замовчуванням файл що вона вже є. 250 00:11:53,500 --> 00:11:54,230 Натисніть Enter. 251 00:11:54,230 --> 00:11:54,740 Добре. 252 00:11:54,740 --> 00:11:58,580 Тепер я просто редагувати файл, врятував його, і він змінився. 253 00:11:58,580 --> 00:11:59,770 254 00:11:59,770 --> 00:12:03,000 >> Так Nano є найпростішим текстовий редактор звикнути. 255 00:12:03,000 --> 00:12:05,520 Альтернативи Вім і Emacs. 256 00:12:05,520 --> 00:12:11,250 Ті, текстові редактори вище рівня що є дуже крутий кривий навчання. 257 00:12:11,250 --> 00:12:13,740 Так моя особиста перевагу є Вім. 258 00:12:13,740 --> 00:12:17,175 І це має велике різноманіття варіантів. 259 00:12:17,175 --> 00:12:18,210 260 00:12:18,210 --> 00:12:24,070 І як тільки ви звикнете до нього, ви ніколи не будете 261 00:12:24,070 --> 00:12:26,900 хочу піти в будь-який інший текстовий редактор, тому що ви просто 262 00:12:26,900 --> 00:12:29,590 є так багато речей, доступні для вас в них, 263 00:12:29,590 --> 00:12:31,690 але це займає дуже довгий час, щоб вчитися. 264 00:12:31,690 --> 00:12:36,000 Так, може бути, ви просто хочете, щоб змусити самі прямо зараз, щоб звикнути до нього, 265 00:12:36,000 --> 00:12:38,130 але я б сказав, це того варто. 266 00:12:38,130 --> 00:12:39,660 Але це важко. 267 00:12:39,660 --> 00:12:41,220 >> І тоді Emacs. 268 00:12:41,220 --> 00:12:44,940 Я завжди боротьба в Emacs, бо Я знаю, як це зробити абсолютно нічого. 269 00:12:44,940 --> 00:12:47,755 Мабуть Emacs не за замовчуванням встановлені на приладі. 270 00:12:47,755 --> 00:12:49,210 271 00:12:49,210 --> 00:12:51,720 Ми, ймовірно, додати, що як установок за замовчуванням. 272 00:12:51,720 --> 00:12:59,620 273 00:12:59,620 --> 00:13:02,390 Як тільки ви навчитеся один з Вім або Emacs, є 274 00:13:02,390 --> 00:13:04,810 немає вагомих причин для коли-небудь дізнатися з іншого боку, 275 00:13:04,810 --> 00:13:07,570 але це зовсім інший стиль. 276 00:13:07,570 --> 00:13:10,460 ОК, так що це редагування текстових файлів. 277 00:13:10,460 --> 00:13:13,374 >> АУДИТОРІЯ: Якщо ви застрягли в Vim прямо зараз, як зробити we-- 278 00:13:13,374 --> 00:13:18,840 279 00:13:18,840 --> 00:13:20,800 >> Роб Боуден: Є декілька режимів в Vim, 280 00:13:20,800 --> 00:13:23,770 і є вся підручники з навчання Vim. 281 00:13:23,770 --> 00:13:27,390 Так що, якщо вам трапиться бути в режимі вставки в порядку 282 00:13:27,390 --> 00:13:29,930 для введення тексту, який ви можете введіть що різними способами, 283 00:13:29,930 --> 00:13:31,610 але я, як ви отримаєте в режим вставки. 284 00:13:31,610 --> 00:13:34,780 В або вийти з якийсь особливий Режим, який ви знаходитесь, просто Побег. 285 00:13:34,780 --> 00:13:37,640 І ви просто колотить Втеча отримати з усіх вкладених режимів ваш в. 286 00:13:37,640 --> 00:13:40,360 Нормально, зараз я повернувся в нормальний режим. 287 00:13:40,360 --> 00:13:43,790 >> І так в нормальному режимі, двокрапка. 288 00:13:43,790 --> 00:13:45,160 Ви бачите це з'явиться у нижній. 289 00:13:45,160 --> 00:13:46,240 А потім кв. 290 00:13:46,240 --> 00:13:52,600 Так кв піде, якщо ви внесли зміни, які я-- є я вніс зміни? 291 00:13:52,600 --> 00:13:54,180 Я зробив зміни, мабуть. 292 00:13:54,180 --> 00:13:57,264 Так що якщо ви внесли зміни, це буде кажуть, що ви можете поставити знак оклику. 293 00:13:57,264 --> 00:13:58,430 Я буду називати його вибуху. 294 00:13:58,430 --> 00:14:02,040 Таким чином, ви можете накласти заборону на просто кинути, нічого не роблячи, 295 00:14:02,040 --> 00:14:04,520 або товстої кишки WQ буде зберегти і вийти. 296 00:14:04,520 --> 00:14:06,580 Так ж взагалі писати. 297 00:14:06,580 --> 00:14:08,300 Так записати файл. 298 00:14:08,300 --> 00:14:09,810 Я можу написати і кинути. 299 00:14:09,810 --> 00:14:13,606 Або ви могли б просто дх шолома, д вибуху просто 300 00:14:13,606 --> 00:14:16,230 щоб вийти туди, незалежно про будь-які зміни, які Ви зробили. 301 00:14:16,230 --> 00:14:21,310 302 00:14:21,310 --> 00:14:28,940 >> Гаразд, так що тепер давайте go-- ми можемо створювати файли. 303 00:14:28,940 --> 00:14:30,890 Почнемо видалення файлів. 304 00:14:30,890 --> 00:14:35,450 І я просто кинути в одному Швидкий нова команда, сенсорний. 305 00:14:35,450 --> 00:14:38,200 Так торкнутися Foo. 306 00:14:38,200 --> 00:14:39,340 Сенсорний бар. 307 00:14:39,340 --> 00:14:40,220 Сенсорний Баз. 308 00:14:40,220 --> 00:14:42,810 Якщо I Ls, тепер ми бачимо, що існують ці файли. 309 00:14:42,810 --> 00:14:44,315 Вони абсолютно порожній. 310 00:14:44,315 --> 00:14:47,178 Так сенсорним просто легко спосіб один, [нерозбірливо]. 311 00:14:47,178 --> 00:14:50,850 312 00:14:50,850 --> 00:14:54,640 По-друге, технічно просто стані це, він оновлює мітки. 313 00:14:54,640 --> 00:14:58,470 Таким чином, будь-який файл, який ви створюєте має відмітка, пов'язані з ним. 314 00:14:58,470 --> 00:15:01,330 Так Баз був створений на 14 вересня в 16:21. 315 00:15:01,330 --> 00:15:02,570 316 00:15:02,570 --> 00:15:06,670 Це зараз 16:22, тому, якщо Я торкаюся Баз знову, ми 317 00:15:06,670 --> 00:15:11,420 бачити, що Баз був найбільш Недавно змінені в 16:22. 318 00:15:11,420 --> 00:15:17,680 Але інакше я майже ніколи подивитися на тимчасові мітки на файли. 319 00:15:17,680 --> 00:15:20,490 Так дотик, тут я тільки за допомогою це створити кілька швидких файли. 320 00:15:20,490 --> 00:15:21,620 321 00:15:21,620 --> 00:15:27,400 >> Гаразд, так що тепер гт Команда, що ми дбаємо про тут. 322 00:15:27,400 --> 00:15:28,665 І ми можемо гт бу. 323 00:15:28,665 --> 00:15:31,000 Скажімо видалити регулярний порожній файл бу. 324 00:15:31,000 --> 00:15:34,070 І ми можемо ввести у, і тепер він видаляє. 325 00:15:34,070 --> 00:15:34,850 гт Баз. 326 00:15:34,850 --> 00:15:35,910 327 00:15:35,910 --> 00:15:38,620 Видалити звичайний порожній файл Баз і тип н для немає. 328 00:15:38,620 --> 00:15:40,060 Тепер він не видаляється. 329 00:15:40,060 --> 00:15:41,240 Так бар і Баз все ще існують. 330 00:15:41,240 --> 00:15:42,232 Foo пішов. 331 00:15:42,232 --> 00:15:43,148 Габріель: Продовжуйте говорити. 332 00:15:43,148 --> 00:15:43,970 333 00:15:43,970 --> 00:15:44,720 Роб Боуден: Великий. 334 00:15:44,720 --> 00:15:45,800 335 00:15:45,800 --> 00:15:50,370 Так настирливого повідомлення тут, видалити регулярний empty-- 336 00:15:50,370 --> 00:15:52,390 що ти там робиш? 337 00:15:52,390 --> 00:15:54,030 Видалити звичайний порожній файл. 338 00:15:54,030 --> 00:15:58,840 339 00:15:58,840 --> 00:16:01,610 Так що, якщо ми не хочемо, щоб бути стурбовані цим повідомленням, 340 00:16:01,610 --> 00:16:05,340 ми можемо кинути в цьому -f Прапор, і таким чином, це сила. 341 00:16:05,340 --> 00:16:11,330 І тепер, якщо я гт -f, він не збирається кажуть ви хочете видалити цей файл. 342 00:16:11,330 --> 00:16:12,040 Це буде просто зробити це. 343 00:16:12,040 --> 00:16:13,720 І Ls, я не бачу бар там більше. 344 00:16:13,720 --> 00:16:14,810 345 00:16:14,810 --> 00:16:18,021 >> Тепер, коли це можливо, небезпечно команда. 346 00:16:18,021 --> 00:16:19,020 Вона, як правило, не так уже й погано. 347 00:16:19,020 --> 00:16:22,240 Ми повернемося в секунду, як це може стати дійсно небезпечним. 348 00:16:22,240 --> 00:16:28,740 І давайте створимо деякі тимчасовий каталог. 349 00:16:28,740 --> 00:16:30,880 MkDir, інша команда. 350 00:16:30,880 --> 00:16:34,880 Так MkDir це команда що робить каталог. 351 00:16:34,880 --> 00:16:40,650 А тепер Л.С. ми бачимо цей хороший світло синій підкреслив тимчасовий каталог. 352 00:16:40,650 --> 00:16:42,295 Я можу компакт-диск в темп. 353 00:16:42,295 --> 00:16:44,590 І я можу MkDir Foo. 354 00:16:44,590 --> 00:16:46,330 перейдіть в Foo. MkDir бар. 355 00:16:46,330 --> 00:16:46,860 перейдіть в барі. 356 00:16:46,860 --> 00:16:49,400 357 00:16:49,400 --> 00:16:54,300 >> Отже, ми бачимо, ми можемо легко отримати в якийсь досить глибокої вкладеності. 358 00:16:54,300 --> 00:16:56,385 Тепер, як я видалити каталог? 359 00:16:56,385 --> 00:16:57,020 360 00:16:57,020 --> 00:16:57,520 видалити каталог. 361 00:16:57,520 --> 00:16:59,030 362 00:16:59,030 --> 00:17:03,540 Так що, якщо я просто прямо намагаються гт, як ми це робили з звичайного файлу, 363 00:17:03,540 --> 00:17:06,420 гт бар збирається сказати не можу видалити бар. 364 00:17:06,420 --> 00:17:07,569 Це каталог. 365 00:17:07,569 --> 00:17:10,619 Там в спеціальної команди для видаленні каталогів, вид. 366 00:17:10,619 --> 00:17:12,900 Так видалити каталог бар. 367 00:17:12,900 --> 00:17:13,710 Тепер бар пішов. 368 00:17:13,710 --> 00:17:14,980 369 00:17:14,980 --> 00:17:22,680 >> Отже, видалити каталог, я не дуже багато і не використовувати. 370 00:17:22,680 --> 00:17:32,220 Причина being-- тепер давайте зробити звичайний бар файлу тут. 371 00:17:32,220 --> 00:17:34,780 Так видалити каталог бу. 372 00:17:34,780 --> 00:17:35,760 видалити каталог. 373 00:17:35,760 --> 00:17:36,900 Не вдалося видалити Foo. 374 00:17:36,900 --> 00:17:38,420 Каталог не пустили. 375 00:17:38,420 --> 00:17:43,420 Таким чином, ви не можете використовувати видалити директорію в Каталог, є речі в ньому. 376 00:17:43,420 --> 00:17:44,830 >> Так у вас є кілька варіантів. 377 00:17:44,830 --> 00:17:49,780 Ви можете перейти в цей каталог, видалити все вручну, а потім вийти 378 00:17:49,780 --> 00:17:51,759 і RMDIR каталог. 379 00:17:51,759 --> 00:17:53,050 Це, безумовно, звучить дратує. 380 00:17:53,050 --> 00:17:55,000 Що робити, якщо є тисячі файлів в там? 381 00:17:55,000 --> 00:17:58,119 Ну, ви могли б гт *. 382 00:17:58,119 --> 00:17:59,410 Ми будемо говорити про * в секунду. 383 00:17:59,410 --> 00:18:00,870 Це в основному означає, що всі речі. 384 00:18:00,870 --> 00:18:02,030 385 00:18:02,030 --> 00:18:05,470 Але ще краще, так гт -г. 386 00:18:05,470 --> 00:18:10,220 Так гт -r-- в великій кількості контексти, -r означає рекурсивний, 387 00:18:10,220 --> 00:18:13,810 який ми будемо говорити про те, що рекурсивні кошти в декілька тижнів. 388 00:18:13,810 --> 00:18:18,630 Але це в основному означає, траверс повнота цього каталогу 389 00:18:18,630 --> 00:18:20,190 і видалити все. 390 00:18:20,190 --> 00:18:24,420 >> Так гт -г Foo збирається сказати спуститися в каталозі Foo? 391 00:18:24,420 --> 00:18:25,210 Так. 392 00:18:25,210 --> 00:18:26,800 Видалити звичайний порожній файл Foo / бар? 393 00:18:26,800 --> 00:18:27,880 394 00:18:27,880 --> 00:18:28,540 Так. 395 00:18:28,540 --> 00:18:29,760 Видалити каталог Foo? 396 00:18:29,760 --> 00:18:30,260 Так. 397 00:18:30,260 --> 00:18:31,470 398 00:18:31,470 --> 00:18:35,020 Так що тепер Foo і все в межах її вилучено. 399 00:18:35,020 --> 00:18:42,370 >> Тепер, може отримати особливо дратує when-- давайте торкатися 1, торкатися 2, доторкнутися 3. 400 00:18:42,370 --> 00:18:44,400 Може є ціла купа файлів. 401 00:18:44,400 --> 00:18:49,060 Якби я хотів, я міг би створити тисячі файлів в тут. 402 00:18:49,060 --> 00:18:53,340 І гт -г Foo збирається щоб бути дуже дратує. 403 00:18:53,340 --> 00:18:55,374 Так, так, так, так, так, так. 404 00:18:55,374 --> 00:18:57,540 З набагато більше файлів ви бачити, як багато разів 405 00:18:57,540 --> 00:18:58,581 Я мав би набрати да. 406 00:18:58,581 --> 00:19:02,265 Ну, ми тільки що бачили колись, як ми можемо позбавитися від необхідності набирати так, -f. 407 00:19:02,265 --> 00:19:03,330 408 00:19:03,330 --> 00:19:07,020 Так MkDir Foo кд Foo сенсорним 1 2 3. 409 00:19:07,020 --> 00:19:08,380 410 00:19:08,380 --> 00:19:17,190 Отже, гт -rf Foo збирається видаляйте поспіль Foo цілком. 411 00:19:17,190 --> 00:19:17,960 Ні швидке. 412 00:19:17,960 --> 00:19:18,650 Немає нічого. 413 00:19:18,650 --> 00:19:20,040 Foo пішов. 414 00:19:20,040 --> 00:19:23,830 >> Так що я вважаю за краще використовувати це Команда весь час. 415 00:19:23,830 --> 00:19:25,120 416 00:19:25,120 --> 00:19:27,830 Тим не менш, це дуже небезпечно команда, 417 00:19:27,830 --> 00:19:33,240 тому що, якщо я роблю щось на зразок це, він не запросить. 418 00:19:33,240 --> 00:19:34,730 Це вже не буде. 419 00:19:34,730 --> 00:19:40,140 І це відбувається досить часто, і навіть у більш високого рівня CS курсів. 420 00:19:40,140 --> 00:19:42,070 Іноді ми побачимо щось, де хто- 421 00:19:42,070 --> 00:19:48,360 каже, що я випадково наш гт ВЧ-е изд мій будинок каталог і всі мої P набору пішов. 422 00:19:48,360 --> 00:19:52,422 І це руйнівне, але немає відро для сміття. 423 00:19:52,422 --> 00:19:54,380 не там немає там нічого щоб ви могли отримати. 424 00:19:54,380 --> 00:19:55,330 Це просто пішов. 425 00:19:55,330 --> 00:19:56,529 426 00:19:56,529 --> 00:19:58,320 Ще гірше буде щось на зразок гт -rf /. 427 00:19:58,320 --> 00:19:59,432 428 00:19:59,432 --> 00:20:01,140 Таким чином, ми тільки що обговорювали що кореневої каталог. 429 00:20:01,140 --> 00:20:03,095 Він проводить всі файли на вашій системі. 430 00:20:03,095 --> 00:20:04,120 431 00:20:04,120 --> 00:20:07,380 Речі, як правило, отримати досить брудно при видаленні речі, як Ls, 432 00:20:07,380 --> 00:20:10,280 і кд, і всі з них. 433 00:20:10,280 --> 00:20:15,467 >> АУДИТОРІЯ: В чому різниця між РМ, РФ, і гт * 434 00:20:15,467 --> 00:20:16,300 Роб Боуден: Так гт * - 435 00:20:16,300 --> 00:20:17,700 436 00:20:17,700 --> 00:20:22,300 >> Елісон: Питання було в чому Різниця між РМ, РФ, і гт *. 437 00:20:22,300 --> 00:20:23,750 438 00:20:23,750 --> 00:20:25,950 >> Роб Боуден: Так гт *. 439 00:20:25,950 --> 00:20:31,910 Зірка в загальному означає, що всі вміст цього каталогу. 440 00:20:31,910 --> 00:20:33,540 441 00:20:33,540 --> 00:20:35,540 Спроба думати про інше способи показуючи зірку. 442 00:20:35,540 --> 00:20:38,280 443 00:20:38,280 --> 00:20:44,780 Ну, зірка насправді взагалі означає відповідність будь-який малюнок. 444 00:20:44,780 --> 00:20:54,930 Так що, якщо у мене є файл з ім'ям dog1, торкнутися dog2, доторкнутися cat1, доторкнутися КАТ2. 445 00:20:54,930 --> 00:20:56,050 446 00:20:56,050 --> 00:21:02,110 Так Ls * 1 збирається друкувати cat1 і dog1, бо зірка може бути заповнене 447 00:21:02,110 --> 00:21:06,270 в with-- потрібно бути там, але зірка може бути або кішку або собаку. 448 00:21:06,270 --> 00:21:07,247 Це дика карта. 449 00:21:07,247 --> 00:21:08,580 Це слово я шукаю. 450 00:21:08,580 --> 00:21:09,120 Дикий карти. 451 00:21:09,120 --> 00:21:10,180 452 00:21:10,180 --> 00:21:13,960 Або я міг Ls собака *, і Я добрався, щоб бачити dog1, dog2. 453 00:21:13,960 --> 00:21:16,870 Так що ті, які перераховані файли які відповідають цій конкретній схемі. 454 00:21:16,870 --> 00:21:18,150 Можна використовувати Ls таким чином. 455 00:21:18,150 --> 00:21:19,350 456 00:21:19,350 --> 00:21:22,020 >> Ls * зірка відповідає чому-небудь. 457 00:21:22,020 --> 00:21:25,710 Так це буде друкувати все вміст цього каталогу 458 00:21:25,710 --> 00:21:27,290 так як всі вони збігаються. 459 00:21:27,290 --> 00:21:30,130 Це не збирається друкувати що-небудь в каталогах верхнього рівня. 460 00:21:30,130 --> 00:21:38,680 Якщо у мене є підкаталог, Foo, і доторкнутися 2 січня 3-- так що тепер, якщо гт * зірки, 461 00:21:38,680 --> 00:21:41,450 видалити cat1, КАТ2, dog1, dog2. 462 00:21:41,450 --> 00:21:42,340 Не можу видалити Foo. 463 00:21:42,340 --> 00:21:43,090 Це каталог. 464 00:21:43,090 --> 00:21:43,920 465 00:21:43,920 --> 00:21:50,340 >> Так зірка розширюється до всього файли в каталозі. 466 00:21:50,340 --> 00:21:55,210 Так технічно гт *, як кажуть гт cat1, cat2, dog1, dog2, щось. 467 00:21:55,210 --> 00:22:03,630 Тоді як гт -rf, технічно зірка буде зробити те, що ми хочемо, але гт -rf-- 468 00:22:03,630 --> 00:22:06,090 якщо я виходжу з цього каталог, гт -rf температура, 469 00:22:06,090 --> 00:22:08,890 що збирається піти в температурі і рекурсивно видалити все. 470 00:22:08,890 --> 00:22:11,260 471 00:22:11,260 --> 00:22:21,060 >> Так зірка окремий в тому, що, що Зрозуміло, по-- так це справа 472 00:22:21,060 --> 00:22:25,090 що я біжу в цю справу що спонукає мене для команд 473 00:22:25,090 --> 00:22:28,770 а потім виконує і робить їм, я називаю це моя оболонка. 474 00:22:28,770 --> 00:22:31,930 І так ця оболонка сама програма. 475 00:22:31,930 --> 00:22:35,010 І якби я хотів, я може працювати в / бен / Баш. 476 00:22:35,010 --> 00:22:36,930 Оболонка називається Баш. 477 00:22:36,930 --> 00:22:39,340 І тепер ми бачимо, щось змінилася незначно, 478 00:22:39,340 --> 00:22:42,200 і це тому, що мої настройки для оболонка дещо відрізняються. 479 00:22:42,200 --> 00:22:45,415 >> Але тепер я технічно працює Оболонка в моїй оригінальній оболонки, 480 00:22:45,415 --> 00:22:49,570 і я можу вийти з цієї оболонки, і тепер Я повернувся до своєї раковини верхнього рівня. 481 00:22:49,570 --> 00:22:55,240 Мета кажучи що is-- зірку. 482 00:22:55,240 --> 00:22:59,020 Так зірка є те, розуміють Баш. 483 00:22:59,020 --> 00:23:04,260 Так гт -rf, -rf прапор зрозумілі лише ГТ. 484 00:23:04,260 --> 00:23:06,380 Він знає, що, коли вас пройти -rf що вам 485 00:23:06,380 --> 00:23:09,520 хочете, щоб він рекурсивно видалити всі файли без видачі запиту. 486 00:23:09,520 --> 00:23:13,960 Зірка-то зрозумів по Баш, що, коли ви говорите, гт *, 487 00:23:13,960 --> 00:23:16,890 Баш не збирається говорити агов гт *, зняти зірку. 488 00:23:16,890 --> 00:23:21,010 Bash збирається сказати гт * видалити cat1, КАТ2, dog1, dog2. 489 00:23:21,010 --> 00:23:24,305 Це автоматично буде розширюватися всі файли в каталозі. 490 00:23:24,305 --> 00:23:29,100 491 00:23:29,100 --> 00:23:33,140 >> І точно так же тильди ще один Символ, який Баш розуміє. 492 00:23:33,140 --> 00:23:37,130 Коли ви говорите, кд ~, Баш розширює що у вашому домашньому каталозі. 493 00:23:37,130 --> 00:23:38,910 494 00:23:38,910 --> 00:23:40,210 Інші питання досі? 495 00:23:40,210 --> 00:23:42,760 496 00:23:42,760 --> 00:23:46,060 ОК так що ми збираємося почати йти швидко. 497 00:23:46,060 --> 00:23:47,700 498 00:23:47,700 --> 00:23:48,545 >> Вкладка завершення. 499 00:23:48,545 --> 00:23:49,670 Просто, щоб кинути його там. 500 00:23:49,670 --> 00:23:51,530 Багато людей не розумію, що це існує. 501 00:23:51,530 --> 00:23:55,060 Так що, якщо я друкую кд Доу, я хочу піти в завантажень. 502 00:23:55,060 --> 00:23:56,700 Мені не потрібно, щоб ввести nloads. 503 00:23:56,700 --> 00:23:57,960 504 00:23:57,960 --> 00:24:00,770 Я можу просто натисніть Tab. 505 00:24:00,770 --> 00:24:03,794 Так вона визнає, що Dow є префіксом, що 506 00:24:03,794 --> 00:24:05,710 нічого не збігаються ще в цьому каталозі, 507 00:24:05,710 --> 00:24:07,520 так що це буде завершити, що для вас. 508 00:24:07,520 --> 00:24:08,610 Тепер я можу ввійти. 509 00:24:08,610 --> 00:24:10,110 >> Я також, що рекурсивно. 510 00:24:10,110 --> 00:24:11,205 Так MkDir щось. 511 00:24:11,205 --> 00:24:12,480 512 00:24:12,480 --> 00:24:13,300 Підемо в Foo. 513 00:24:13,300 --> 00:24:14,830 MkDir бар. 514 00:24:14,830 --> 00:24:17,345 Так повертаючись до мого дому каталог, я бачу, скачували. 515 00:24:17,345 --> 00:24:19,040 516 00:24:19,040 --> 00:24:21,860 Тепер потрапивши вкладку знову, автоматично збирається заповнити Foo. 517 00:24:21,860 --> 00:24:22,880 Це єдиний довідник. 518 00:24:22,880 --> 00:24:25,340 Удар вкладку знову, автоматично збирається заповнити бар. 519 00:24:25,340 --> 00:24:26,798 Так що тепер я в (~ Завантаження / Foo / бар). 520 00:24:26,798 --> 00:24:27,310 521 00:24:27,310 --> 00:24:31,692 >> Так що це завершення вкладка, всякий раз, коли я добрався до робочого дня, 522 00:24:31,692 --> 00:24:33,400 і я стою над чиєсь плече, 523 00:24:33,400 --> 00:24:40,470 і вони збираються гт D-O-W-N-L-О-A-D-S, я вмирає. 524 00:24:40,470 --> 00:24:41,990 Просто вкладка, вкладка, вкладка, вкладка. 525 00:24:41,990 --> 00:24:44,550 526 00:24:44,550 --> 00:24:45,630 Так виразно використовувати вкладку. 527 00:24:45,630 --> 00:24:47,890 528 00:24:47,890 --> 00:24:49,840 І точно так само і вниз, багато людей 529 00:24:49,840 --> 00:24:51,930 Просто сталося ніколи не вдарив вгору і вниз. 530 00:24:51,930 --> 00:24:54,870 Це буде пройти попередній Команди, так що якщо ви просто побіг щось, 531 00:24:54,870 --> 00:24:58,300 і ви хочете, щоб запустити його знову, просто затримати, поки ви отримаєте до нього. 532 00:24:58,300 --> 00:24:59,870 533 00:24:59,870 --> 00:25:00,370 Добре. 534 00:25:00,370 --> 00:25:01,460 535 00:25:01,460 --> 00:25:03,585 >> Так швидко, деякі інші речі. 536 00:25:03,585 --> 00:25:04,800 537 00:25:04,800 --> 00:25:05,930 Давайте повернемося в темп. 538 00:25:05,930 --> 00:25:06,976 539 00:25:06,976 --> 00:25:08,125 Давайте створимо кілька файлів. 540 00:25:08,125 --> 00:25:10,480 541 00:25:10,480 --> 00:25:15,215 Так тут, я просто буду перераховувати якісь слова. 542 00:25:15,215 --> 00:25:18,460 543 00:25:18,460 --> 00:25:21,035 собака, кішка, мяу. 544 00:25:21,035 --> 00:25:23,940 545 00:25:23,940 --> 00:25:26,040 Давайте зробимо собаку, рибу. 546 00:25:26,040 --> 00:25:27,500 547 00:25:27,500 --> 00:25:32,320 Так що тепер репутація є дуже корисні команди, що ви 548 00:25:32,320 --> 00:25:37,820 використовувати для пошуку в усьому файли для конкретного тексту, 549 00:25:37,820 --> 00:25:40,910 і технічно це можна зробити дійсно складні вирази для того, щоб відповідати. 550 00:25:40,910 --> 00:25:44,830 >> Так от, якщо я вичленувати, і те, що я хочу, щоб шукати? 551 00:25:44,830 --> 00:25:49,130 Скажімо Я шукаю кішок, і Я хочу, щоб шукати всі ці файли. 552 00:25:49,130 --> 00:25:50,650 Так як я роблю всі ці файли? 553 00:25:50,650 --> 00:25:51,900 Зірка. 554 00:25:51,900 --> 00:25:54,939 Таким чином, в файлі однієї, у мене є кіт. 555 00:25:54,939 --> 00:25:56,980 Я, ймовірно, могли б називається вона щось краще, 556 00:25:56,980 --> 00:25:59,063 бо виглядає як номера рядків або щось. 557 00:25:59,063 --> 00:26:01,590 Але в файлі одного мене є рядок з кішкою. 558 00:26:01,590 --> 00:26:04,160 У файлі дві у мене є рядок з кішкою. 559 00:26:04,160 --> 00:26:07,280 Так що тепер я можу зазирнути всередину файлу одного і см, о, так, що файл дійсно кішку. 560 00:26:07,280 --> 00:26:10,210 Повідомлення файл зо три не був підібраний бо кішка не там. 561 00:26:10,210 --> 00:26:13,882 Я можу виокремити інформацію про мяу. 562 00:26:13,882 --> 00:26:14,840 Тільки файл два має нявкання. 563 00:26:14,840 --> 00:26:16,120 564 00:26:16,120 --> 00:26:20,640 >> Так що це можна поєднати, знову, з -r, яка 565 00:26:20,640 --> 00:26:23,580 як я вже говорив часто означає рекурсивний. 566 00:26:23,580 --> 00:26:29,800 І тому я можу прийти сюди, Grep -r для будь-який екземпляр of-- давайте редагувати 567 00:26:29,800 --> 00:26:32,010 цей просто викинути кішку в там. 568 00:26:32,010 --> 00:26:38,800 Так вичленувати -r для будь-якого примірника Кішка в даному каталозі. 569 00:26:38,800 --> 00:26:41,600 І це буде рекурсивно пошук поддиректорий. 570 00:26:41,600 --> 00:26:43,940 Таким чином, в Baz, є кішка. 571 00:26:43,940 --> 00:26:45,570 В TEMP / 2, є кішка. 572 00:26:45,570 --> 00:26:47,960 І в температурі / 1 є кішка. 573 00:26:47,960 --> 00:26:50,045 Так ось пошук в файлах. 574 00:26:50,045 --> 00:26:51,250 575 00:26:51,250 --> 00:26:55,090 >> Тепер ви можете також використовувати знахідку. 576 00:26:55,090 --> 00:26:59,640 І так знайти конкретно про пошук файлів із заданим ім'ям. 577 00:26:59,640 --> 00:27:02,490 Так давайте зробимо деякі більш. 578 00:27:02,490 --> 00:27:03,660 Підемо в завантажень. 579 00:27:03,660 --> 00:27:04,680 580 00:27:04,680 --> 00:27:05,380 Сенсорний dog1. 581 00:27:05,380 --> 00:27:06,840 582 00:27:06,840 --> 00:27:07,770 Сенсорний КАТ2. 583 00:27:07,770 --> 00:27:09,290 584 00:27:09,290 --> 00:27:10,760 Сенсорний cat_dog. 585 00:27:10,760 --> 00:27:14,550 586 00:27:14,550 --> 00:27:15,975 Сенсорний CatCat. 587 00:27:15,975 --> 00:27:18,270 588 00:27:18,270 --> 00:27:23,810 >> Тому я хочу, щоб знайти всі Файли з собакою в ім'я. 589 00:27:23,810 --> 00:27:28,060 Так знайти, і на найдовший раз, коли я не пам'ятала, 590 00:27:28,060 --> 00:27:33,760 як знайти не працював, поки я, нарешті, читати щось, що змусило його так ясно. 591 00:27:33,760 --> 00:27:35,784 Так що знайдіть, автоматично рекурсивно. 592 00:27:35,784 --> 00:27:36,950 Вам не потрібно, щоб пройти -r. 593 00:27:36,950 --> 00:27:38,090 594 00:27:38,090 --> 00:27:39,110 Так що знайдіть точку. 595 00:27:39,110 --> 00:27:40,750 Ми не говорили про точку ще. 596 00:27:40,750 --> 00:27:44,800 Тоді як точка точка завжди означає один каталог вгору. 597 00:27:44,800 --> 00:27:46,960 Dot завжди означає поточний каталог. 598 00:27:46,960 --> 00:27:51,390 Так що я міг гт -r точку в Точно так же я можу гт -rf *. 599 00:27:51,390 --> 00:27:53,140 В остаточному підсумку вони зробити те ж саме. 600 00:27:53,140 --> 00:27:56,040 гт -rf точка збирається зняти весь поточний каталог. 601 00:27:56,040 --> 00:27:57,440 602 00:27:57,440 --> 00:27:59,680 >> ОК, які я не хочу, щоб зробити там. 603 00:27:59,680 --> 00:28:01,490 604 00:28:01,490 --> 00:28:04,320 Але знайти точку. 605 00:28:04,320 --> 00:28:07,920 Так рекурсивно шукати струму каталог, і тепер все 606 00:28:07,920 --> 00:28:14,125 після цього купа прапорів, які ви використовувати, щоб виключити речі від повернення. 607 00:28:14,125 --> 00:28:17,250 Так що знайдіть точка повертає все те, що його можна знайти в поточному каталозі. 608 00:28:17,250 --> 00:28:19,700 Такі всі файли рекурсивно шукати. 609 00:28:19,700 --> 00:28:21,250 Ми побачимо, деякі з тих, хто в секунду. 610 00:28:21,250 --> 00:28:23,150 611 00:28:23,150 --> 00:28:27,140 >> Але у випадку, якщо вам цікаво, як я роблю що, таким чином, командне К, принаймні 612 00:28:27,140 --> 00:28:29,660 в моєму терміналі в Mac очищає його. 613 00:28:29,660 --> 00:28:34,660 Контроль L зазвичай очищає це для будь-якої термінал. 614 00:28:34,660 --> 00:28:36,480 Ви також можете ввести ясно. 615 00:28:36,480 --> 00:28:38,410 І якщо ви коли-небудь в дивну scenario-- 616 00:28:38,410 --> 00:28:42,790 це трапилося зі мною пару time-- де кольору ваших підказок 617 00:28:42,790 --> 00:28:46,590 всіх зіпсувало, або вам не в стані побачити що-небудь 618 00:28:46,590 --> 00:28:51,232 набираючись коли ви друкуєте, бо іноді як колір фону встановлюється 619 00:28:51,232 --> 00:28:53,940 так само, як кольори переднього плану і тепер ви не можете бачити шрифти. 620 00:28:53,940 --> 00:28:55,110 621 00:28:55,110 --> 00:28:59,830 Скидання це те, що просто скидає Вам замовчуванням чорному тлі с, 622 00:28:59,830 --> 00:29:01,840 білий спереду, або те, що Ви встановлюєте їх. 623 00:29:01,840 --> 00:29:03,390 624 00:29:03,390 --> 00:29:04,790 >> Так, де ми були? 625 00:29:04,790 --> 00:29:05,930 Знайти точку. 626 00:29:05,930 --> 00:29:09,360 Так що тепер все це в минулому Точка обмежує результати 627 00:29:09,360 --> 00:29:11,450 до чогось, що відповідає дана модель. 628 00:29:11,450 --> 00:29:16,110 Так от, я хочу, щоб пошук все з ім'ям кішки. 629 00:29:16,110 --> 00:29:17,300 Я нічого не отримав. 630 00:29:17,300 --> 00:29:18,390 Чому це так? 631 00:29:18,390 --> 00:29:21,230 Ну, я просто шукаю щось з точно таким ім'ям кота. 632 00:29:21,230 --> 00:29:25,150 Якщо я хочу, щоб шукати щось що є певний шаблон, і cat-- 633 00:29:25,150 --> 00:29:28,890 котирування технічно не є необхідними, але я кидав їх туди. 634 00:29:28,890 --> 00:29:32,720 Так що тепер він знаходить CatCat, бо це єдине, що 635 00:29:32,720 --> 00:29:36,040 має деяке довільне картина з наступним кішки. 636 00:29:36,040 --> 00:29:41,950 Я можу поставити кішка *, і зараз знайти CatCat, cat_dog, КАТ2, 637 00:29:41,950 --> 00:29:45,245 бо ті всі речі з кішкою на початку подальшим небудь. 638 00:29:45,245 --> 00:29:46,120 Ви можете поєднати це. 639 00:29:46,120 --> 00:29:50,480 Якщо ви хочете знайти всі файли C що у вас є, ви можете зробити * .c. 640 00:29:50,480 --> 00:29:51,960 Ми blah.c тут. 641 00:29:51,960 --> 00:29:53,000 642 00:29:53,000 --> 00:29:55,020 Так ось знахідка робіт. 643 00:29:55,020 --> 00:29:55,770 Ви можете шукати. 644 00:29:55,770 --> 00:29:58,270 Він має цілий букет прапорів для подальших обмежень. 645 00:29:58,270 --> 00:30:00,960 І один на них, скажімо -d. 646 00:30:00,960 --> 00:30:02,110 647 00:30:02,110 --> 00:30:04,435 Так застарілим. 648 00:30:04,435 --> 00:30:05,425 649 00:30:05,425 --> 00:30:06,550 О, це не те, що я хочу. 650 00:30:06,550 --> 00:30:07,730 Чи не -d. 651 00:30:07,730 --> 00:30:08,860 Тип d. 652 00:30:08,860 --> 00:30:13,820 Так що знайдіть точку - тип d. 653 00:30:13,820 --> 00:30:17,760 Так що, що тільки що зробив це Я шукаю для всіх файлів в поточному каталозі 654 00:30:17,760 --> 00:30:21,680 з a-- d позначає directory-- типу каталогів. 655 00:30:21,680 --> 00:30:24,430 Це повертає всі каталоги в поточному каталозі. 656 00:30:24,430 --> 00:30:27,670 І типу F всі регулярні Файли, все не каталоги. 657 00:30:27,670 --> 00:30:29,809 Так що це просто Приклад інших способів 658 00:30:29,809 --> 00:30:32,350 може обмежити пошук іншої ніж просто ім'я файлу. 659 00:30:32,350 --> 00:30:34,126 660 00:30:34,126 --> 00:30:35,570 >> Це було 30 хвилин. 661 00:30:35,570 --> 00:30:36,848 Все ще. 662 00:30:36,848 --> 00:30:38,132 >> Елісон: Я вітер через. 663 00:30:38,132 --> 00:30:39,670 Все буде добре. 664 00:30:39,670 --> 00:30:41,460 >> Роб Боуден: Таким чином, деякі інші речі. 665 00:30:41,460 --> 00:30:45,700 Тепер бац, знак оклику. 666 00:30:45,700 --> 00:30:50,530 Так що в цілому означає: добре, давайте подивимося приклад. 667 00:30:50,530 --> 00:30:52,230 Так! Е, що, що будемо робити? 668 00:30:52,230 --> 00:30:53,520 669 00:30:53,520 --> 00:30:57,810 Ну це, здається, повторив знахідка точка -типу е. 670 00:30:57,810 --> 00:30:59,240 Що о! Г? 671 00:30:59,240 --> 00:31:00,760 Це просто вичленувати -r кішку *. 672 00:31:00,760 --> 00:31:02,010 673 00:31:02,010 --> 00:31:05,720 Так бац ви можете використовувати, щоб повторити Недавно зробив команду. 674 00:31:05,720 --> 00:31:13,280 Так що, якщо я друкую! GRE, він збирається знову запустити команди, які почалися з GRE найбільш 675 00:31:13,280 --> 00:31:14,060 останнім часом. 676 00:31:14,060 --> 00:31:17,090 >> І ви можете бачити все це Команди з історією. 677 00:31:17,090 --> 00:31:17,880 Так історія. 678 00:31:17,880 --> 00:31:19,630 Це все Команди Я біг сьогодні. 679 00:31:19,630 --> 00:31:21,089 680 00:31:21,089 --> 00:31:23,130 І добре, що це не в буквальному сенсі обмежується сьогодні, 681 00:31:23,130 --> 00:31:25,180 але я використовував тільки це Прилад на сьогоднішній день. 682 00:31:25,180 --> 00:31:28,730 Це ваша повнота Історія вашої оболонки Bash, 683 00:31:28,730 --> 00:31:30,433 за винятком того, відсікає на якийсь момент. 684 00:31:30,433 --> 00:31:33,474 АУДИТОРІЯ: Що станеться, якщо ви робите Історія команди [нерозбірливо] і про помилку 685 00:31:33,474 --> 00:31:35,430 в результаті все одно буде друкувати the-- 686 00:31:35,430 --> 00:31:44,110 >> Роб Боуден: Так, якщо є Помилка в одному з цих commands-- 687 00:31:44,110 --> 00:31:48,090 так скажемо, що це помилка команди не знайшов. 688 00:31:48,090 --> 00:31:49,312 689 00:31:49,312 --> 00:31:50,520 Проте з'являється в історії. 690 00:31:50,520 --> 00:31:52,620 691 00:31:52,620 --> 00:31:53,170 Добре. 692 00:31:53,170 --> 00:31:54,750 693 00:31:54,750 --> 00:31:56,040 Інші питання по темі? 694 00:31:56,040 --> 00:31:58,760 695 00:31:58,760 --> 00:32:00,300 Так ось вибух. 696 00:32:00,300 --> 00:32:04,230 >> Тепер, дійсно корисна команда, людина. 697 00:32:04,230 --> 00:32:07,750 Так що дає посібник для даної команди. 698 00:32:07,750 --> 00:32:11,640 Так скажімо, людино Ls, так це показує мені Ls. 699 00:32:11,640 --> 00:32:13,400 У ньому перераховані вміст каталогу. 700 00:32:13,400 --> 00:32:17,150 І це те, де я бачу, що є ці різні прапори, які існують. 701 00:32:17,150 --> 00:32:21,340 Таким чином, ми бачимо, що Ls -l існує якби ми мали прочитати, що. Ls -l 702 00:32:21,340 --> 00:32:26,150 дає мені це повний список довідник з хто володіє файл 703 00:32:26,150 --> 00:32:29,750 розмір файлу, модифікований мітка. 704 00:32:29,750 --> 00:32:31,130 705 00:32:31,130 --> 00:32:34,980 Так Ls -a ще один, що ви могли б насправді використовувати декілька частіше. 706 00:32:34,980 --> 00:32:38,130 -al мій самий загальний ознака ці минулі Ls. 707 00:32:38,130 --> 00:32:42,520 >> Так -а, зверніть увагу, що є багато більше файлів, ніж просто Ls. 708 00:32:42,520 --> 00:32:44,170 Ls -a. 709 00:32:44,170 --> 00:32:46,170 Що спільного з усіма цими файлами? 710 00:32:46,170 --> 00:32:47,790 Вони починаються з точки. 711 00:32:47,790 --> 00:32:54,710 Так що ця угода в Linux, що файли, які починаються з точки приховані. 712 00:32:54,710 --> 00:32:58,330 Так це просто означає, що коли ми просто прямі Ls, 713 00:32:58,330 --> 00:33:04,170 або ми шукаємо цей каталог, використовуючи знайшов еквівалент, або для Windows 714 00:33:04,170 --> 00:33:07,250 Провідник еквівалент, що ми не хочу, щоб ці точкові файли. 715 00:33:07,250 --> 00:33:09,680 Вони просто забруднюють погляд на речі. 716 00:33:09,680 --> 00:33:11,790 Таким чином, вони приховані якщо ви спеціально 717 00:33:11,790 --> 00:33:14,250 просити їх щось на зразок -а. 718 00:33:14,250 --> 00:33:18,920 Так що я можу кд в .local, і я бачу, що, що саме по собі є каталог з 719 00:33:18,920 --> 00:33:22,220 загальний каталог і додатки і бла-бла-бла. 720 00:33:22,220 --> 00:33:24,520 Так точка, файли, вони просто приховані. 721 00:33:24,520 --> 00:33:26,250 722 00:33:26,250 --> 00:33:29,355 >> ОК, так що інші важливі. 723 00:33:29,355 --> 00:33:30,490 724 00:33:30,490 --> 00:33:32,000 У мене є пара, я можу пропустити. 725 00:33:32,000 --> 00:33:38,160 Давайте просто реальний швидкий розмова про Перенаправлення файлу речі. 726 00:33:38,160 --> 00:33:43,020 Таким чином, є цілий комплекс серія речей, які ви можете робити з цим, 727 00:33:43,020 --> 00:33:47,204 але тільки, щоб побачити їх, скажімо, луна. 728 00:33:47,204 --> 00:33:47,870 Ще одна команда. 729 00:33:47,870 --> 00:33:48,920 Дійсно німий команда. 730 00:33:48,920 --> 00:33:50,710 Все це робить друк, що я говорю це, щоб. 731 00:33:50,710 --> 00:33:52,070 Так відлуння привіт. 732 00:33:52,070 --> 00:33:53,850 Це просто повторив привіт екрані. 733 00:33:53,850 --> 00:33:55,170 734 00:33:55,170 --> 00:33:56,390 Привіт світ. 735 00:33:56,390 --> 00:33:57,890 Відгомони привіт світ. 736 00:33:57,890 --> 00:34:02,650 >> Так одна команда або один Символ, який Баш розуміє 737 00:34:02,650 --> 00:34:07,620 це більше, ніж символ, і тобто вихідний символ для файлу. 738 00:34:07,620 --> 00:34:10,940 Так що, якщо я вихідний, щоб це Фу, є тепер файл 739 00:34:10,940 --> 00:34:15,100 називається Foo, всередині який є привіт світ. 740 00:34:15,100 --> 00:34:18,489 Так помітити, що, коли я відлуння привіт світ труб в Foo, 741 00:34:18,489 --> 00:34:19,980 це не відлуння привіт світ. 742 00:34:19,980 --> 00:34:22,630 Замість цього він був введений в файлі Foo. 743 00:34:22,630 --> 00:34:25,340 І інша команда просто кинути його на тебе, кіт. 744 00:34:25,340 --> 00:34:29,191 Це простий спосіб, щоб просто повністю список вмісту файлу 745 00:34:29,191 --> 00:34:31,440 так що у мене немає, щоб відкрити текстовий редактор, для його перегляду. 746 00:34:31,440 --> 00:34:34,159 Так вміст Foo файл є привіт світ. 747 00:34:34,159 --> 00:34:38,460 І я міг кішка blah.c, вміст цього. 748 00:34:38,460 --> 00:34:42,123 >> Знову ж, це команди, які, не очікувати вас є їх все напам'ять. 749 00:34:42,123 --> 00:34:43,860 Ідея ви бачили їх. 750 00:34:43,860 --> 00:34:45,735 Може бути, ви працюєте на щось, і ти 751 00:34:45,735 --> 00:34:47,230 як я втомився від відкриття цього файлу. 752 00:34:47,230 --> 00:34:50,120 Я хотів би просто подивитися на утримання дійсно швидко. 753 00:34:50,120 --> 00:34:52,320 Ви можете зробити це, то озирнутися назад і сказати про I 754 00:34:52,320 --> 00:34:55,250 пам'ятаю щось подібне що існує, і це кішка. 755 00:34:55,250 --> 00:35:00,630 >> Так що відбувається в файл. 756 00:35:00,630 --> 00:35:06,639 Тепер є насправді не нічого хорошого Приклад читання з файлу ще. 757 00:35:06,639 --> 00:35:08,930 Щось, що бере щось від стандарту в? 758 00:35:08,930 --> 00:35:10,010 759 00:35:10,010 --> 00:35:11,544 Будь-яка проста команда Linux? 760 00:35:11,544 --> 00:35:13,480 761 00:35:13,480 --> 00:35:16,970 Коли ми добираємося до нього, через пару тижні все piece-- добре, що, 762 00:35:16,970 --> 00:35:20,470 На цьому тижні у вас є шматок, де ви почати приймати введення від користувача. 763 00:35:20,470 --> 00:35:23,696 І так, як правило, при вводі що введення з клавіатури. 764 00:35:23,696 --> 00:35:25,570 Замість того, щоб друкувати, що вступники на клавіатурі, 765 00:35:25,570 --> 00:35:30,950 Ви можете замість труби з файлу так що, коли ви робите Маріо, ./mario, 766 00:35:30,950 --> 00:35:35,200 труба в будь-якому даному файлі і що збирається запустити програму Маріо. 767 00:35:35,200 --> 00:35:37,300 Не чекаючи на введення в клавіатура, а не це 768 00:35:37,300 --> 00:35:39,650 просто зачитаю рядки з файлу Foo. 769 00:35:39,650 --> 00:35:45,230 >> Так більше Foo поміщає його в файл Foo, і менше, ніж Foo 770 00:35:45,230 --> 00:35:50,170 бере матеріал з файлу Foo і використовує в якості вхідних даних, що до цієї програми. 771 00:35:50,170 --> 00:35:51,520 772 00:35:51,520 --> 00:36:00,630 І тільки, щоб побачити його, ми могли б також повторити Foo бар Баз, а потім замість одного 773 00:36:00,630 --> 00:36:03,850 більше, давайте зробимо два в Foo. 774 00:36:03,850 --> 00:36:05,610 Що це робити? 775 00:36:05,610 --> 00:36:07,180 Це просто додає в файл. 776 00:36:07,180 --> 00:36:15,360 Таким чином, замість помітили, якщо я луна-бла в Foo, а потім кішка Фу, це просто бла. 777 00:36:15,360 --> 00:36:18,285 Отже, коли ви висновок в файл, його повністю перезаписує файл. 778 00:36:18,285 --> 00:36:19,330 779 00:36:19,330 --> 00:36:22,740 Якщо ви просто хочете додати, двічі [? грейдер. ?] 780 00:36:22,740 --> 00:36:24,080 >> І останнє, це труба. 781 00:36:24,080 --> 00:36:29,590 Труба стає набагато складнішим, де він приймає висновок однієї команди 782 00:36:29,590 --> 00:36:32,320 і подає його в такій команді. 783 00:36:32,320 --> 00:36:36,140 Таким чином, деякі звичайна справа, історія. 784 00:36:36,140 --> 00:36:37,920 Так, тьху, я не хочу дивитися на це. 785 00:36:37,920 --> 00:36:40,680 786 00:36:40,680 --> 00:36:44,485 Показати всі команди в моїй історії де я вичленувати-ред за щось. 787 00:36:44,485 --> 00:36:45,360 Ні, це помилка. 788 00:36:45,360 --> 00:36:50,360 Показати всі команди, де я знаходжу. 789 00:36:50,360 --> 00:36:52,360 Всі знаходяться команди я коли-небудь керували. 790 00:36:52,360 --> 00:36:55,050 >> Так історія. 791 00:36:55,050 --> 00:36:59,017 Тепер історія виводить на екран цей список команд, 792 00:36:59,017 --> 00:37:00,850 але я не хочу, щоб Вихід його на екрані. 793 00:37:00,850 --> 00:37:03,445 Замість цього я збираюся труби нього в Grep. 794 00:37:03,445 --> 00:37:04,790 795 00:37:04,790 --> 00:37:07,830 Так що давайте вичленувати інформацію про всі випадки знахідки. 796 00:37:07,830 --> 00:37:09,550 797 00:37:09,550 --> 00:37:17,000 Так що тепер замість GREP взяття вхід, замість of-- 798 00:37:17,000 --> 00:37:24,360 Grep здатний обробляти як input-- ми за допомогою Grep трохи по-іншому тут. 799 00:37:24,360 --> 00:37:29,550 Так замість того, щоб друкувати список речі, які ми хотіли шукати 800 00:37:29,550 --> 00:37:31,070 і сказав Grep приймає в якості вхідних даних. 801 00:37:31,070 --> 00:37:34,810 Так що, якщо я просто Grep знайти, його чекає, щоб я типу речі. 802 00:37:34,810 --> 00:37:37,661 Так кіт привіт знайти. 803 00:37:37,661 --> 00:37:38,160 Привіт. 804 00:37:38,160 --> 00:37:40,430 805 00:37:40,430 --> 00:37:40,930 Знайти. 806 00:37:40,930 --> 00:37:43,670 Зверніть увагу, кожен раз, коли я друкую знайти він визнає, що я набрав знахідку. 807 00:37:43,670 --> 00:37:44,880 808 00:37:44,880 --> 00:37:49,540 Таким чином, замість цього, буде пошук файлів для знахідку. 809 00:37:49,540 --> 00:37:53,930 >> Так історія тепер збирається Вихід Перелік усіх команд. 810 00:37:53,930 --> 00:37:55,200 811 00:37:55,200 --> 00:37:58,100 Ми покласти, що вихід, і ми годуємо його вичленувати, 812 00:37:58,100 --> 00:38:00,180 і тому він впливів усі примірники знайти. 813 00:38:00,180 --> 00:38:02,170 814 00:38:02,170 --> 00:38:05,570 Тому я сказав, що це був би заплутаним це якщо я-- це все-таки заплутаною. 815 00:38:05,570 --> 00:38:07,030 Якщо я вичленувати інформацію про Grep. 816 00:38:07,030 --> 00:38:08,755 817 00:38:08,755 --> 00:38:11,130 Зверніть увагу, що це значною мірою завжди показуючи команду I просто 818 00:38:11,130 --> 00:38:15,280 побіг, бо цій команді Сам має Grep всередині нього. 819 00:38:15,280 --> 00:38:16,580 820 00:38:16,580 --> 00:38:20,674 >> ОК, так що будь-які питання по темі? 821 00:38:20,674 --> 00:38:22,340 І я буду передавати його по в цей момент. 822 00:38:22,340 --> 00:38:24,690 Сподіваюся, це хороший Огляд усіх команд 823 00:38:24,690 --> 00:38:30,100 що вам не потрібно мати запам'ятав, але вони складають 824 00:38:30,100 --> 00:38:32,950 твердий 95% того, що я зробити в командному рядку. 825 00:38:32,950 --> 00:38:34,310 826 00:38:34,310 --> 00:38:39,140 Також майте на увазі, що в командному рядку Сам, Баш це мова програмування, 827 00:38:39,140 --> 00:38:43,070 і тому, коли ви сідаєте на нього, ви можливо, захочете зробити дійсно складні речі. 828 00:38:43,070 --> 00:38:47,522 І тому він має щось на зразок петель, і IFS, і всіх тих, 829 00:38:47,522 --> 00:38:50,230 що ви збираєтеся, щоб звикнути до зі своїми мовами програмування. 830 00:38:50,230 --> 00:38:53,660 Але що знаходиться за межами Обсяг даного розділу. 831 00:38:53,660 --> 00:38:55,520 832 00:38:55,520 --> 00:38:56,985 ОК, так що ніяких питань? 833 00:38:56,985 --> 00:38:57,940 834 00:38:57,940 --> 00:38:58,523 Аллісон: Ні? 835 00:38:58,523 --> 00:38:59,450 Габріель: Ви збираєтеся to-- 836 00:38:59,450 --> 00:39:01,158 Елісон: Я можу зробити це на шахті, якщо ви хочете. 837 00:39:01,158 --> 00:39:02,626 Ми можемо бачити, що відбувається. 838 00:39:02,626 --> 00:39:03,750 Роб Боуден: Off для Allison. 839 00:39:03,750 --> 00:39:05,090 Елісон: Ву. 840 00:39:05,090 --> 00:39:07,504 Ти недосяжний, Роб. 841 00:39:07,504 --> 00:39:08,920 Ти хочеш, щоб переключитися з вами? 842 00:39:08,920 --> 00:39:10,246 Або ви отримали, ОК. 843 00:39:10,246 --> 00:39:13,590 844 00:39:13,590 --> 00:39:16,990 Я збираюся спробувати і не цілком може бути як тривалим там. 845 00:39:16,990 --> 00:39:20,619 846 00:39:20,619 --> 00:39:22,660 Давайте подивимося, якщо це воля працювати так, як я хочу, щоб. 847 00:39:22,660 --> 00:39:26,170 848 00:39:26,170 --> 00:39:26,670 Може бути? 849 00:39:26,670 --> 00:39:27,760 850 00:39:27,760 --> 00:39:28,296 Ха-ха! 851 00:39:28,296 --> 00:39:28,796 Так. 852 00:39:28,796 --> 00:39:30,460 853 00:39:30,460 --> 00:39:34,066 >> Так що я просто хочу, щоб дуже швидко йти через змінні, цикли, умовні, 854 00:39:34,066 --> 00:39:35,440 і трохи від компілятора. 855 00:39:35,440 --> 00:39:38,570 Якщо у вас є питання по в будь-який час, будь ласка, припиніть мене. 856 00:39:38,570 --> 00:39:42,750 Ці хлопці будуть нагадувати мені повторити Ваше питання в разі, якщо я забув, 857 00:39:42,750 --> 00:39:44,210 але не повинно бути занадто погано. 858 00:39:44,210 --> 00:39:45,850 >> Так змінних, так. 859 00:39:45,850 --> 00:39:48,060 У нас немає одного з ваших Скретч частини тут. 860 00:39:48,060 --> 00:39:50,440 Я впевнений, що більшість з вас, якщо Ви були якісь ігри 861 00:39:50,440 --> 00:39:53,810 що ви створили з нуля, ви мали відслідковувати те, як оцінка, 862 00:39:53,810 --> 00:39:55,870 або час, або щось подібне. 863 00:39:55,870 --> 00:39:58,080 Так що ті, яскраво-помаранчевий штук, які ми бачимо там 864 00:39:58,080 --> 00:40:02,630 просто подряпин форма змінні, і ви, безумовно, 865 00:40:02,630 --> 00:40:04,640 бути з допомогою змінних протягом ваших програм. 866 00:40:04,640 --> 00:40:07,350 Якщо ви не, я не дуже упевнений, що ви робите. 867 00:40:07,350 --> 00:40:09,000 868 00:40:09,000 --> 00:40:12,215 >> Але в будь-якому випадку, велика справа, визначення змінних. 869 00:40:12,215 --> 00:40:13,630 870 00:40:13,630 --> 00:40:16,970 З С кожна змінна має мати тип, оголошений, 871 00:40:16,970 --> 00:40:22,090 так що я дав вам дуже Взагалі один у верхній частині. 872 00:40:22,090 --> 00:40:24,045 Таким чином, ви будете мати ваші введіть, а потім все, що 873 00:40:24,045 --> 00:40:25,420 Ви вирішили назвати вашу змінну. 874 00:40:25,420 --> 00:40:27,500 875 00:40:27,500 --> 00:40:29,680 Таким чином, в цьому випадку необхідно ввести в вашому списку змінних. 876 00:40:29,680 --> 00:40:31,400 >> У нас є три приклади. 877 00:40:31,400 --> 00:40:34,439 Чар деякій мірі, з А, який є те, що 878 00:40:34,439 --> 00:40:36,230 Я впевнений, що ви всі хочете щоб отримати в цьому класі. 879 00:40:36,230 --> 00:40:37,380 880 00:40:37,380 --> 00:40:40,670 Ви можете визначити декілька змінні по одній лінії 881 00:40:40,670 --> 00:40:43,880 поки вони все той же тип, яка є нашим другим прикладом є 882 00:40:43,880 --> 00:40:46,409 де у вас є три Змінні, х, у, м 883 00:40:46,409 --> 00:40:47,200 Вони все поплавки. 884 00:40:47,200 --> 00:40:49,160 885 00:40:49,160 --> 00:40:53,250 І тоді ви можете також, в цей останній Приклад з INT рахунком і числа 886 00:40:53,250 --> 00:40:56,510 команд, ви можете инициализировать їх прямо там. 887 00:40:56,510 --> 00:41:01,270 >> Таким чином, в середньому, наприклад, де ми просто поплавок х, у, і г, 888 00:41:01,270 --> 00:41:02,730 ті, які ще не инициализирован. 889 00:41:02,730 --> 00:41:04,140 Вони не мають ніякої цінності. 890 00:41:04,140 --> 00:41:05,600 Або вони мають значення для сміття. 891 00:41:05,600 --> 00:41:07,370 892 00:41:07,370 --> 00:41:10,790 А якщо спробувати і використовувати їх, компілятор буде кричати на вас. 893 00:41:10,790 --> 00:41:14,727 Ви повинні як оголошувати і инициализировать змінні. 894 00:41:14,727 --> 00:41:16,310 Так що в цьому останньому, ми робимо інше. 895 00:41:16,310 --> 00:41:19,320 Ми оголошуємо змінні з забити і кількість команд, 896 00:41:19,320 --> 00:41:24,134 і ми ініціалізації їх, даючи їм їх початкові значення 7 і 4 897 00:41:24,134 --> 00:41:24,675 відповідно. 898 00:41:24,675 --> 00:41:26,310 899 00:41:26,310 --> 00:41:27,190 Прохолодний. 900 00:41:27,190 --> 00:41:28,550 Все добре? 901 00:41:28,550 --> 00:41:29,470 Дивовижний. 902 00:41:29,470 --> 00:41:31,690 >> Отже, деякі конвенції. 903 00:41:31,690 --> 00:41:35,965 Якщо ви, хлопці, читали через стилі 50, ці 904 00:41:35,965 --> 00:41:39,510 просто речі, які ми хотіли б для Вам реалізувати в вашому стилі. 905 00:41:39,510 --> 00:41:41,230 Так значущі імена. 906 00:41:41,230 --> 00:41:45,700 Якщо ви почнете називати речі тільки х, у, г, особливо 907 00:41:45,700 --> 00:41:47,902 як ви отримаєте в тривалий програми, ви 908 00:41:47,902 --> 00:41:49,610 ймовірно, заплутати себе і бути 909 00:41:49,610 --> 00:41:52,930 як те, що це змінна, що відноситься до. 910 00:41:52,930 --> 00:41:55,880 Я поняття не маю, що це означає. 911 00:41:55,880 --> 00:41:59,280 >> Так що, якщо це мається на увазі провести оцінка, називають його забити. 912 00:41:59,280 --> 00:42:05,720 Якщо це мається на увазі провести якусь відповідь або привести, дати йому ім'я, як, що. 913 00:42:05,720 --> 00:42:09,920 Для петель, які ми будемо потрапити в на наступному слайді, 914 00:42:09,920 --> 00:42:12,985 Одна буква змінні прекрасні. 915 00:42:12,985 --> 00:42:16,033 916 00:42:16,033 --> 00:42:18,449 Роб Боуден: I, J і К. всього угоди для для петель 917 00:42:18,449 --> 00:42:22,050 що всі чекають їх називатися I, J і К. 918 00:42:22,050 --> 00:42:26,890 Ви можете зателефонувати them-- я бачу ряд стовпець або рядок виклику іноді 919 00:42:26,890 --> 00:42:29,450 протягом двох вкладених циклів, і це також свого роду стандарт. 920 00:42:29,450 --> 00:42:31,450 Але я і J повністю зрозумів. 921 00:42:31,450 --> 00:42:33,670 >> Елісон: Так, я і J ти абсолютно нормально. 922 00:42:33,670 --> 00:42:36,250 Для ясності, як в деяких з ваших наборів P, 923 00:42:36,250 --> 00:42:39,745 можливо, має сенс, щоб мати більше описові речі в там просто 924 00:42:39,745 --> 00:42:40,920 щоб відслідковувати його. 925 00:42:40,920 --> 00:42:45,100 Але я думаю, I, J і К я думаю, Переважна більшість з нас все використовують. 926 00:42:45,100 --> 00:42:46,890 927 00:42:46,890 --> 00:42:50,340 >> Роб Боуден: З цим конвенції, так стиль має важливе значення. 928 00:42:50,340 --> 00:42:53,520 Це один з чотирьох осей на якому ви оцінюються, 929 00:42:53,520 --> 00:42:58,110 і це так легко просто перейти Ваш P встановлений в кінці і переконайтеся 930 00:42:58,110 --> 00:42:59,770 що їсти не стилістичні помилки. 931 00:42:59,770 --> 00:43:01,742 Тому переконайтеся, що ви табулируем правильно. 932 00:43:01,742 --> 00:43:03,200 Переконайтеся, що ваші змінні називаються. 933 00:43:03,200 --> 00:43:04,450 Залиште деякі коментарі. 934 00:43:04,450 --> 00:43:06,677 Це дуже легко отримати ті пункти. 935 00:43:06,677 --> 00:43:09,510 Вам не доведеться думати про те, що-небудь для того, щоб отримати ці окуляри. 936 00:43:09,510 --> 00:43:11,093 Вам не потрібно, щоб зрозуміти що-небудь з. 937 00:43:11,093 --> 00:43:12,640 Це просто робить його виглядати досить. 938 00:43:12,640 --> 00:43:14,850 >> Елісон: Насправді, ми є стиль 50, який 939 00:43:14,850 --> 00:43:17,920 розповість вам, де ви Мессінг , Якщо ви зіпсувати по стилю 940 00:43:17,920 --> 00:43:21,180 і скажу вам точно, що вам потрібно виправити і як вам потрібно, щоб виправити це. 941 00:43:21,180 --> 00:43:23,900 Це також просто добре відзначити що це політика, звісно 942 00:43:23,900 --> 00:43:27,200 що якщо ви в офісі годин і ваш код є безлад, 943 00:43:27,200 --> 00:43:30,200 ми можемо відмовити в допомозі Ви поки не виглядає краще. 944 00:43:30,200 --> 00:43:34,310 Так що почніть прямо, тримати єдиний стиль, 945 00:43:34,310 --> 00:43:37,100 Ви також просто збирається зробити ваше життя набагато простіше, коли 946 00:43:37,100 --> 00:43:38,730 Ви намагаєтеся пройти налагодження. 947 00:43:38,730 --> 00:43:41,510 Якщо ви намагаєтеся з'ясувати, де Ви пропускаєте фігурна дужка 948 00:43:41,510 --> 00:43:44,890 і вони всюди, ви просто зробити своє власне життя складніше. 949 00:43:44,890 --> 00:43:47,217 Так відповідати стилю. 950 00:43:47,217 --> 00:43:48,800 Я обіцяю, що це буде зробити ваше життя простіше. 951 00:43:48,800 --> 00:43:50,330 Це зробить наше життя простіше. 952 00:43:50,330 --> 00:43:51,869 Все буде набагато щасливіші. 953 00:43:51,869 --> 00:43:52,910 І це те, що ви хочете. 954 00:43:52,910 --> 00:43:54,192 955 00:43:54,192 --> 00:43:55,650 Габріель: Ваша оцінка буде вища. 956 00:43:55,650 --> 00:43:56,858 Елісон: Так, і ваша оцінка. 957 00:43:56,858 --> 00:43:58,410 958 00:43:58,410 --> 00:44:01,930 Якщо TF це, як ви, має тенденцію бути сприятливим. 959 00:44:01,930 --> 00:44:02,940 960 00:44:02,940 --> 00:44:05,010 Гаразд, а потім просто Другий момент тут. 961 00:44:05,010 --> 00:44:06,300 Послідовні ініціалізації. 962 00:44:06,300 --> 00:44:09,605 Так, як ми бачили, можна оголосити і ініціалізувати речі. 963 00:44:09,605 --> 00:44:10,750 964 00:44:10,750 --> 00:44:13,180 Кілька змінних в одному рядку. 965 00:44:13,180 --> 00:44:17,930 Одна річ, ми б не хотіли вас зробити, це оголосити деякі змінні 966 00:44:17,930 --> 00:44:21,360 а не инициализировать їх на те ж саме лінія, що ви ініціалізації інших. 967 00:44:21,360 --> 00:44:23,960 >> Таким чином, у випадку, що зроблено не має сенсу взагалі, 968 00:44:23,960 --> 00:44:29,050 ми маємо приклад тут де ми оголосивши цілими 969 00:44:29,050 --> 00:44:31,180 в змінних кварталів п'ятаків і пенні, 970 00:44:31,180 --> 00:44:34,214 але квартали і пенні немає початкового значення. 971 00:44:34,214 --> 00:44:36,630 Ми не инициализировать їх, але прямо в середині там 972 00:44:36,630 --> 00:44:38,600 ми вже инициализирован п'ятаків на 0. 973 00:44:38,600 --> 00:44:41,650 Так що або робити, чвертей і десять центів, гроши. 974 00:44:41,650 --> 00:44:43,170 Або чверті рівнятися 0. 975 00:44:43,170 --> 00:44:43,930 Dimes рівнятися 0. 976 00:44:43,930 --> 00:44:46,810 Пенні рівнятися 0, або щось ті початкові значення. 977 00:44:46,810 --> 00:44:49,800 >> Великий річ зі стилем, бути послідовним. 978 00:44:49,800 --> 00:44:51,050 Якщо ви сумніваєтеся, бути послідовним. 979 00:44:51,050 --> 00:44:52,129 980 00:44:52,129 --> 00:44:53,420 Але слідувати нашим гідом стиль теж. 981 00:44:53,420 --> 00:44:54,710 982 00:44:54,710 --> 00:44:55,317 Прохолодний. 983 00:44:55,317 --> 00:44:56,150 Все там добре? 984 00:44:56,150 --> 00:44:57,566 >> АУДИТОРІЯ: Де стиль керівництва? 985 00:44:57,566 --> 00:45:00,800 Елісон: гід по стилю є on-- що сайт? 986 00:45:00,800 --> 00:45:03,950 >> Габріель: Я думаю, що це manual.cs50.net/-- 987 00:45:03,950 --> 00:45:04,575 Елісон: Стиль? 988 00:45:04,575 --> 00:45:05,610 989 00:45:05,610 --> 00:45:06,390 >> Габріель: Стиль. 990 00:45:06,390 --> 00:45:06,920 Так. 991 00:45:06,920 --> 00:45:07,520 >> Елісон: Так. 992 00:45:07,520 --> 00:45:10,150 Так питання, де це стиль 50. 993 00:45:10,150 --> 00:45:12,250 manual.cs50.net/style. 994 00:45:12,250 --> 00:45:13,639 Да? 995 00:45:13,639 --> 00:45:16,880 >> АУДИТОРІЯ: Якщо ми визначаємо Змінні, це ОК 996 00:45:16,880 --> 00:45:28,145 якщо покласти, як [нерозбірливо], як INT оцінка, а потім інтервал мета. 997 00:45:28,145 --> 00:45:29,873 998 00:45:29,873 --> 00:45:35,100 Так би ви сказати, що тепер ми отримав визначити їх разом? 999 00:45:35,100 --> 00:45:37,640 >> Елісон: Так питання, слід у вас є надлишкова код 1000 00:45:37,640 --> 00:45:40,940 коли ви визначаєте змінні, такі як Int рахунком і 1001 00:45:40,940 --> 00:45:43,239 На наступному рядку INT грі? 1002 00:45:43,239 --> 00:45:46,030 Роб Боуден: Є, безумовно, випадки, коли надлишкова код погано. 1003 00:45:46,030 --> 00:45:47,738 Я не розглядатиму що надлишкова код. 1004 00:45:47,738 --> 00:45:50,970 Я майже ніколи не заявляють кратне змінні по одній і тій же лінії будь-коли. 1005 00:45:50,970 --> 00:45:53,736 І якщо що-небудь, це тому, що Зазвичай я залишаю свого роду коментар 1006 00:45:53,736 --> 00:45:55,235 пояснюючи, що змінна є для. 1007 00:45:55,235 --> 00:45:57,582 Так що я буду говорити, INT воротаря слеш слеш. 1008 00:45:57,582 --> 00:45:59,350 Відстежує б то не було. 1009 00:45:59,350 --> 00:46:00,710 Загалом слеш слеш. 1010 00:46:00,710 --> 00:46:01,790 1011 00:46:01,790 --> 00:46:06,455 Так що це набагато грубіше таким чином поставити їх все на одній і тій же лінії. 1012 00:46:06,455 --> 00:46:08,080 Я просто ніколи не ставив їх на одній лінії. 1013 00:46:08,080 --> 00:46:10,580 >> Елісон: Я відчуваю, що це особиста перевага на даному етапі. 1014 00:46:10,580 --> 00:46:14,900 >> АУДИТОРІЯ: Чи означає це, піти на для петель та інше теж? 1015 00:46:14,900 --> 00:46:15,900 Роб Боуден: Як всередині? 1016 00:46:15,900 --> 00:46:18,282 Як междунар я дорівнює 0 кому довжина дорівнює-то? 1017 00:46:18,282 --> 00:46:19,490 Це у вас немає вибору. 1018 00:46:19,490 --> 00:46:21,850 1019 00:46:21,850 --> 00:46:25,910 С для петель ініціалізації part-- так що ви, можливо, бачили тільки 1020 00:46:25,910 --> 00:46:31,520 INT I дорівнює 0 коми я менше ніж те, що крапка з комою я плюс плюс. 1021 00:46:31,520 --> 00:46:33,820 Це INT I дорівнює 0, технічно можна також 1022 00:46:33,820 --> 00:46:35,770 робити те, що ми бачили раніше з синтаксисом комами. 1023 00:46:35,770 --> 00:46:39,790 INT I дорівнює 0 коми J дорівнює 3 кома до дорівнює 5. 1024 00:46:39,790 --> 00:46:41,610 1025 00:46:41,610 --> 00:46:44,320 Ви не маєте вибір, щоб розділити що на декілька ліній, 1026 00:46:44,320 --> 00:46:46,530 і це стандарт. 1027 00:46:46,530 --> 00:46:47,780 Бачачи це є добре. 1028 00:46:47,780 --> 00:46:49,182 1029 00:46:49,182 --> 00:46:49,890 Аллісон: Awesome. 1030 00:46:49,890 --> 00:46:52,120 Ну, зручно переходити в петлі. 1031 00:46:52,120 --> 00:46:54,860 1032 00:46:54,860 --> 00:46:58,980 Так що так, ось у нас є кілька прикладів з петлі, що ви, хлопці, бачили в порожньому. 1033 00:46:58,980 --> 00:47:01,550 І, звичайно, всі ці може просто бути відтворені у С. 1034 00:47:01,550 --> 00:47:04,610 І вони в основному дозволяють вам повторити який-небудь ділянку коду 1035 00:47:04,610 --> 00:47:06,740 до певного стану задовольняється, які ми будемо 1036 00:47:06,740 --> 00:47:09,198 потрапити в праві після розмови про петлі з умовних. 1037 00:47:09,198 --> 00:47:11,150 1038 00:47:11,150 --> 00:47:12,570 >> Таким чином, ми маємо три основних типи. 1039 00:47:12,570 --> 00:47:17,500 Для, в той час, і зробити час, який ми все піде через прямо зараз. 1040 00:47:17,500 --> 00:47:18,860 Отже, спочатку один для петель. 1041 00:47:18,860 --> 00:47:20,490 1042 00:47:20,490 --> 00:47:25,034 Таким чином, для деяких умов, виконати цей блок коду. 1043 00:47:25,034 --> 00:47:27,200 У нас є трохи прохолодною Графік тут внизу. 1044 00:47:27,200 --> 00:47:28,230 1045 00:47:28,230 --> 00:47:32,310 Але в основному у вас є в Ваш для, що першою лінії, 1046 00:47:32,310 --> 00:47:34,240 ви збираєтеся инициализировать змінні. 1047 00:47:34,240 --> 00:47:38,260 >> Так як ми говорили, я це дорівнює 0 або I, дорівнює 10. 1048 00:47:38,260 --> 00:47:40,010 Все, що потрібно, що Мінлива бути це 1049 00:47:40,010 --> 00:47:43,970 збирається инициализировать там, оголошувати і ініціалізувати до деякого значення. 1050 00:47:43,970 --> 00:47:46,760 Отже, ми маємо деякі стан, що відбувається 1051 00:47:46,760 --> 00:47:48,900 бути перевірка нашого Мінлива проти чогось. 1052 00:47:48,900 --> 00:47:55,220 Таким чином, в цьому випадку типовий випадок, де може бути, ви хочете, щоб ця частина коду 1053 00:47:55,220 --> 00:47:56,620 щоб виконати п'ять разів. 1054 00:47:56,620 --> 00:48:02,380 Таким чином, ми повинні були б INT I дорівнює 0, і ми хочу, щоб це було, коли я менше 5. 1055 00:48:02,380 --> 00:48:04,940 Так що стан просто збирається перевірити, що кожен раз, коли. 1056 00:48:04,940 --> 00:48:07,120 Якщо цієї умови істинно, це 1057 00:48:07,120 --> 00:48:11,162 збирається запустити код, який точно що ця маленька схема показує. 1058 00:48:11,162 --> 00:48:12,370 1059 00:48:12,370 --> 00:48:13,639 >> І так він виконує його. 1060 00:48:13,639 --> 00:48:15,430 Він оновлює змінну, яка є те, що ми бачимо 1061 00:48:15,430 --> 00:48:21,020 в останній частині нашого за ініціалізація кільця є. 1062 00:48:21,020 --> 00:48:22,370 1063 00:48:22,370 --> 00:48:26,030 Так що будемо просто продовжувати робити це поки що умова не виконана, 1064 00:48:26,030 --> 00:48:28,010 і потім він виходить цикл і продовжити 1065 00:48:28,010 --> 00:48:29,960 перейти з іншою частиною вашої програми. 1066 00:48:29,960 --> 00:48:31,320 1067 00:48:31,320 --> 00:48:33,620 Все там добре? 1068 00:48:33,620 --> 00:48:34,440 Прохолодний. 1069 00:48:34,440 --> 00:48:37,780 >> Так ось приклад, дуже схожі на те, що я тільки що говорив о. 1070 00:48:37,780 --> 00:48:42,030 Таким чином, ми просто хочемо, щоб роздрукувати це CS50 в 10 разів. 1071 00:48:42,030 --> 00:48:44,540 Отже, ви бачите тут у нас є наш для, а потім ми 1072 00:48:44,540 --> 00:48:47,450 ініціалізації змінної Я рівним 0. 1073 00:48:47,450 --> 00:48:50,610 Наша умова перевірки що це менше, ніж 10. 1074 00:48:50,610 --> 00:48:55,210 Так оцінюють в вірно, коли ми вперше почати, а потім оновлює нашу змінну 1075 00:48:55,210 --> 00:48:58,985 кожен раз, що він насправді виконує і виводить це CS50. 1076 00:48:58,985 --> 00:49:00,510 1077 00:49:00,510 --> 00:49:02,180 І закінчиться після 10 раз. 1078 00:49:02,180 --> 00:49:03,190 1079 00:49:03,190 --> 00:49:04,070 Прохолодний. 1080 00:49:04,070 --> 00:49:07,130 >> Таким чином, хоча петлі наступного разу. 1081 00:49:07,130 --> 00:49:12,400 І, як ви бачите тут, ми просто повинні деякі в той час як це condition-- питання? 1082 00:49:12,400 --> 00:49:15,238 >> АУДИТОРІЯ: Як я можу стрибати насправді просто не одне число, 1083 00:49:15,238 --> 00:49:19,030 але два номери [нерозбірливо] Я плюс плюс плюс? 1084 00:49:19,030 --> 00:49:23,390 >> Елісон: Отже питання в тому, як ви можете оновити змінну більш ніж одного 1085 00:49:23,390 --> 00:49:24,070 за один раз. 1086 00:49:24,070 --> 00:49:26,860 Так що я плюс плюс буде оновлення на одиницю кожного разу. 1087 00:49:26,860 --> 00:49:32,310 Якщо ви хотіли, щоб оновити його, два, ви могли б зробити, я плюс дорівнює 2. 1088 00:49:32,310 --> 00:49:34,526 >> Роб Боуден: Ви бачили плюс одно в лекції ще? 1089 00:49:34,526 --> 00:49:35,442 >> АУДИТОРІЯ: [нерозбірливо]. 1090 00:49:35,442 --> 00:49:37,440 1091 00:49:37,440 --> 00:49:42,110 >> Елісон: Це ефективно Те ж саме, як я дорівнює я плюс 2. 1092 00:49:42,110 --> 00:49:46,130 Так що збирається взяти його і оновити його на два щоразу. 1093 00:49:46,130 --> 00:49:49,432 Плюс дорівнює якраз те, ми називаємо синтаксичний цукор. 1094 00:49:49,432 --> 00:49:52,390 Роб Боуден: Так, тих, існують майже всі арифметичні операції. 1095 00:49:52,390 --> 00:49:55,830 Так що я раз, рівне подвоїть число. 1096 00:49:55,830 --> 00:50:02,590 J розрив дорівнює 3 така ж, як J дорівнює J ділиться на 3. 1097 00:50:02,590 --> 00:50:07,399 >> Елісон: Або мінус дорівнює 2 буде зменшення I на два щоразу. 1098 00:50:07,399 --> 00:50:08,565 Роб Боуден: Навіть сучасна одно. 1099 00:50:08,565 --> 00:50:09,690 1100 00:50:09,690 --> 00:50:13,270 Ви ще не бачили бітових операторів, але вставки дорівнює і амперсанд одно, 1101 00:50:13,270 --> 00:50:14,560 всі ті, існують. 1102 00:50:14,560 --> 00:50:19,480 >> Елісон: Так багато разів, особливо з перших двох наборів P, 1103 00:50:19,480 --> 00:50:22,527 Ви будете, ймовірно, збільшується на один, так що я плюс плюс, J плюс плюс 1104 00:50:22,527 --> 00:50:24,610 всі речі, які ви збираєтеся щоб, як правило, бути з допомогою. 1105 00:50:24,610 --> 00:50:28,240 Але що стан поновлення повністю під вашим контролем. 1106 00:50:28,240 --> 00:50:32,310 Ви можете оновити його будь-якими кроком або в який би шлях ви вирішите. 1107 00:50:32,310 --> 00:50:33,389 1108 00:50:33,389 --> 00:50:35,680 Може бути, ви навіть хочете, щоб це було випадкове число іноді. 1109 00:50:35,680 --> 00:50:37,180 1110 00:50:37,180 --> 00:50:39,580 Але так, є багато речі, які можна зробити з цим. 1111 00:50:39,580 --> 00:50:41,280 Ви не обмежені I плюс плюс. 1112 00:50:41,280 --> 00:50:44,400 >> Роб Боуден: Просто так вас знаю, що це існує, це також 1113 00:50:44,400 --> 00:50:46,960 існує в іншій формі, плюс плюс я. 1114 00:50:46,960 --> 00:50:51,410 Так що якщо ви коли-небудь пошуку в Інтернеті і трапиться побачити плюс плюс я, 1115 00:50:51,410 --> 00:50:52,870 в значній мірі означає те ж саме. 1116 00:50:52,870 --> 00:50:54,377 1117 00:50:54,377 --> 00:50:54,960 Елісон: Прохолодний. 1118 00:50:54,960 --> 00:50:56,070 1119 00:50:56,070 --> 00:50:56,740 Добре? 1120 00:50:56,740 --> 00:50:57,240 Дивовижний. 1121 00:50:57,240 --> 00:50:59,190 1122 00:50:59,190 --> 00:50:59,990 Таким чином, хоча петель. 1123 00:50:59,990 --> 00:51:01,160 1124 00:51:01,160 --> 00:51:02,570 Дуже схоже. 1125 00:51:02,570 --> 00:51:03,737 У вас є яка-небудь умова. 1126 00:51:03,737 --> 00:51:05,820 Головне, щоб помітити Тут замість того, 1127 00:51:05,820 --> 00:51:08,540 три різні частини встановити, у нас є один. 1128 00:51:08,540 --> 00:51:11,090 Ми просто є умова який перевіряється. 1129 00:51:11,090 --> 00:51:14,920 І таким же чином, як довго, як що стан оцінюється як істина, 1130 00:51:14,920 --> 00:51:16,840 Ваш код буде працювати. 1131 00:51:16,840 --> 00:51:18,870 І якщо це брехня, це припиняє, крок 1132 00:51:18,870 --> 00:51:21,930 на наступній частині вашої програми. 1133 00:51:21,930 --> 00:51:25,780 Так що це свого роду like-- що хороший приклад перевірки 1134 00:51:25,780 --> 00:51:27,215 з якоїсь нормальний стан? 1135 00:51:27,215 --> 00:51:29,402 1136 00:51:29,402 --> 00:51:30,235 Габріель: Тоді як вірно. 1137 00:51:30,235 --> 00:51:32,110 Елісон: Ви могли б зробити в той час як вірно. 1138 00:51:32,110 --> 00:51:33,510 Добре, 1 дорівнює 1. 1139 00:51:33,510 --> 00:51:34,970 1140 00:51:34,970 --> 00:51:37,642 >> Роб Боуден: Ви можете зробити while-- тільки замість використання для петлі, 1141 00:51:37,642 --> 00:51:39,600 Ви завжди можете закодувати для циклу в той час як петля, 1142 00:51:39,600 --> 00:51:42,600 так що я більше, ніж 0 або в той час як я менше 10. 1143 00:51:42,600 --> 00:51:45,200 1144 00:51:45,200 --> 00:51:46,010 >> Аллісон: Awesome. 1145 00:51:46,010 --> 00:51:50,640 І тоді ми робимо під час петлі, які відмінно підходить для перевірки користувача, де 1146 00:51:50,640 --> 00:51:55,370 Ви хочете, щоб отримати щось від Ваш користувач, побачити, якщо вона діє, 1147 00:51:55,370 --> 00:51:57,060 а потім продовжити звідти. 1148 00:51:57,060 --> 00:52:04,000 Так, одна з речей, щоб знати, є з зробити в той час як у тому, що він збирається виконати, 1149 00:52:04,000 --> 00:52:08,000 і тоді він буде повторно виконати якщо ця умова виконана. 1150 00:52:08,000 --> 00:52:11,240 >> Так, ймовірно, кращий спосіб зробити це це просто, щоб побачити приклад тут. 1151 00:52:11,240 --> 00:52:14,620 Так як я щойно згадав, користувач перевірка дійсно useful-- 1152 00:52:14,620 --> 00:52:17,520 або зробити whiles дійсно корисно з перевіркою користувача. 1153 00:52:17,520 --> 00:52:19,730 Так що це просто буде повторно запитувати деяку користувача 1154 00:52:19,730 --> 00:52:23,640 поки вони не вказати позитивне число, які можуть бути корисні для вашого P набору 1155 00:52:23,640 --> 00:52:24,190 на цьому тижні. 1156 00:52:24,190 --> 00:52:25,850 1157 00:52:25,850 --> 00:52:29,480 І тому в даному випадку, коли ми спочатку запустити цю програму, 1158 00:52:29,480 --> 00:52:32,260 він збирається друкувати введіть позитивне число. 1159 00:52:32,260 --> 00:52:34,810 Це збирається отримати деякі введення від користувача, 1160 00:52:34,810 --> 00:52:38,320 а потім він збирається перевірити що вхід на умові 1161 00:52:38,320 --> 00:52:39,500 що ви встановили для нього. 1162 00:52:39,500 --> 00:52:41,030 >> Таким чином, в даному випадку це буде перевіряти. 1163 00:52:41,030 --> 00:52:44,190 Це буде сказати, в порядку, це наш вклад негативний, 1164 00:52:44,190 --> 00:52:47,175 або це 0 або негативний, який буде недійсним. 1165 00:52:47,175 --> 00:52:48,300 Так то воно буде повторно запрошення. 1166 00:52:48,300 --> 00:52:50,280 1167 00:52:50,280 --> 00:52:50,780 Питання? 1168 00:52:50,780 --> 00:52:54,720 >> АУДИТОРІЯ: Це те ж саме, то, як в той час як петлі, якщо ви просто скопіювали цей код 1169 00:52:54,720 --> 00:52:56,680 і поклав його [нерозбірливо] петлі а? 1170 00:52:56,680 --> 00:52:59,620 1171 00:52:59,620 --> 00:53:05,160 >> Елісон: Так питання було б це може бути таким же, як тільки час 1172 00:53:05,160 --> 00:53:08,570 цикл, якби ми мали просто скопіювати той час як цикл вище. 1173 00:53:08,570 --> 00:53:12,440 Таким чином, в цьому випадку, ваш час петля збирається перевірити стан в першу чергу. 1174 00:53:12,440 --> 00:53:15,300 Таким чином, в цьому випадку, якщо ми спробували написати просто як час циклу, 1175 00:53:15,300 --> 00:53:18,010 було б сказати, в той час як вхід становить менше одного. 1176 00:53:18,010 --> 00:53:20,801 Але ми не повинні вхід для нього. 1177 00:53:20,801 --> 00:53:24,238 >> АУДИТОРІЯ: Якщо вас [нерозбірливо] в той час як цикл в тому числі цей код, 1178 00:53:24,238 --> 00:53:28,166 але тоді ви впоралися код вище той час циклу теж. 1179 00:53:28,166 --> 00:53:31,052 Просто потрібно було цей код [Нерозбірливо] в той час як цикл. 1180 00:53:31,052 --> 00:53:32,760 Елісон: Було б те ж саме, так. 1181 00:53:32,760 --> 00:53:37,110 Таким чином, ви могли б просто write-- замість того, щоб do-- да. 1182 00:53:37,110 --> 00:53:37,976 1183 00:53:37,976 --> 00:53:39,350 Габріель: Але це більш елегантно. 1184 00:53:39,350 --> 00:53:41,020 Елісон: Так, це більш елегантно. 1185 00:53:41,020 --> 00:53:44,560 Ви можете потрапити в дизайні і ще багато чого, але так, ви можете повністю зробити це. 1186 00:53:44,560 --> 00:53:45,850 1187 00:53:45,850 --> 00:53:47,072 Ще питання? 1188 00:53:47,072 --> 00:53:49,240 1189 00:53:49,240 --> 00:53:50,250 Добре, прохолодно. 1190 00:53:50,250 --> 00:53:55,540 >> Таким чином, ми багато говорили про умови з усіма цими петлями, які ми маємо, 1191 00:53:55,540 --> 00:53:58,615 так що ми насправді потрапити в умови в логічних виразів. 1192 00:53:58,615 --> 00:53:59,990 1193 00:53:59,990 --> 00:54:03,440 Знову ж таки, ви використовуєте їх в C, так тільки почасти перехід 1194 00:54:03,440 --> 00:54:06,050 від більш графічним інтерфейсом насправді кодування. 1195 00:54:06,050 --> 00:54:07,480 1196 00:54:07,480 --> 00:54:09,100 >> Круто, так великий, якщо. 1197 00:54:09,100 --> 00:54:11,130 1198 00:54:11,130 --> 00:54:17,070 В основному тільки дозволяє ввести якась логіка в нашу програму і перевірки 1199 00:54:17,070 --> 00:54:17,790 SYS умови. 1200 00:54:17,790 --> 00:54:22,150 Таким чином, в даному випадку, в порядку, п більше 0? 1201 00:54:22,150 --> 00:54:24,070 Так, це, так що ви можете виконати це. 1202 00:54:24,070 --> 00:54:28,060 Це просто перевірка деяких стан, що у Вас є 1203 00:54:28,060 --> 00:54:33,565 встановити, що я думаю, ми все комфортно з перевірки умови. 1204 00:54:33,565 --> 00:54:35,975 1205 00:54:35,975 --> 00:54:36,475 Прохолодний. 1206 00:54:36,475 --> 00:54:38,760 1207 00:54:38,760 --> 00:54:44,530 Так що, якщо ще ваш другий, Ви можете сказати, в порядку, якщо це правда, 1208 00:54:44,530 --> 00:54:46,150 зробити це першим ділом. 1209 00:54:46,150 --> 00:54:48,720 В іншому випадку я хочу, щоб ви за замовчуванням і зробити щось ще. 1210 00:54:48,720 --> 00:54:51,977 1211 00:54:51,977 --> 00:54:55,060 Як у цьому випадку, ви або вибрати позитивне число або негативне число. 1212 00:54:55,060 --> 00:54:56,500 У вас є тільки два варіанти. 1213 00:54:56,500 --> 00:54:59,550 Ви повинні це виконати незалежно про те, що ваші користувач вводить. 1214 00:54:59,550 --> 00:55:02,920 Таким чином, ви можете сказати, добре, це більше, ніж 0? 1215 00:55:02,920 --> 00:55:03,480 Прохолодний. 1216 00:55:03,480 --> 00:55:04,480 Роздрукувати позитивне число. 1217 00:55:04,480 --> 00:55:06,153 Якщо це не так, роздрукувати негативний. 1218 00:55:06,153 --> 00:55:06,960 Все добре? 1219 00:55:06,960 --> 00:55:14,920 >> А потім одна справа визнати, що якщо, якщо умова виконана, 1220 00:55:14,920 --> 00:55:16,650 ще ніколи не також виконати. 1221 00:55:16,650 --> 00:55:19,210 Тільки один з них буде виконати за один раз. 1222 00:55:19,210 --> 00:55:20,410 Так що це компроміс. 1223 00:55:20,410 --> 00:55:21,720 Ви не можете мати обидва. 1224 00:55:21,720 --> 00:55:23,566 Ви повинні або перша умова. 1225 00:55:23,566 --> 00:55:25,440 Ви повинні або якщо або в іншому місці, не так. 1226 00:55:25,440 --> 00:55:26,849 1227 00:55:26,849 --> 00:55:28,890 Який тоді може зробити речі ще більш складною, 1228 00:55:28,890 --> 00:55:31,060 тому що ви можете зробити, якщо, інакше він, а потім ще. 1229 00:55:31,060 --> 00:55:32,810 Таким чином, в даному випадку, ми є три умови. 1230 00:55:32,810 --> 00:55:34,830 1231 00:55:34,830 --> 00:55:38,370 І знову, тільки один з них є буде в кінцевому підсумку виконується. 1232 00:55:38,370 --> 00:55:41,030 Таким чином, ви можете бути здивовані, добре, що, якщо вас 1233 00:55:41,030 --> 00:55:45,510 є щось, що можна зустріти два з них. 1234 00:55:45,510 --> 00:55:49,520 Може бути, все, що ви вводу зустрічається як умова 1235 00:55:49,520 --> 00:55:51,811 бо, якщо і ще якщо. 1236 00:55:51,811 --> 00:55:53,060 Єдине, що збирається бігти 1237 00:55:53,060 --> 00:55:56,240 >> Елісон: Як тільки він знаходить щось що він відповідає умові, що 1238 00:55:56,240 --> 00:55:59,790 істинно, що до чого це буде не бігти і нічого більше. 1239 00:55:59,790 --> 00:56:04,440 Так що, якщо у вас було це число між 0 і 5 для вашого першого, 1240 00:56:04,440 --> 00:56:10,530 або це число між 3 і 5 для ще, якщо частина, 1241 00:56:10,530 --> 00:56:15,550 і ви вводите number-- Я сказав 0 і 5 і-- 4. 1242 00:56:15,550 --> 00:56:18,110 Це вдарить перший. 1243 00:56:18,110 --> 00:56:20,960 Це скаже ОК, це число між 0 і 5. 1244 00:56:20,960 --> 00:56:22,480 Виконати і залишити. 1245 00:56:22,480 --> 00:56:25,340 Він ніколи не буде вдарити, що другий варіант. 1246 00:56:25,340 --> 00:56:26,394 Прохолодний? 1247 00:56:26,394 --> 00:56:27,250 Дивовижний. 1248 00:56:27,250 --> 00:56:31,300 >> ОК, ми також мали перемикачі звітності, якщо Ви хочете отримати ще more-- або шкода, 1249 00:56:31,300 --> 00:56:31,965 Перемикач знаходиться поруч. 1250 00:56:31,965 --> 00:56:33,540 1251 00:56:33,540 --> 00:56:34,990 Я забігаю вперед тут. 1252 00:56:34,990 --> 00:56:36,370 1253 00:56:36,370 --> 00:56:39,210 Знову ж, багаторазове якщо блоків де, як я щойно сказав, 1254 00:56:39,210 --> 00:56:45,600 це, як тільки ви знайдете умова що зустрічався і якщо ще, якщо в іншому місці, 1255 00:56:45,600 --> 00:56:46,630 вона залишає. 1256 00:56:46,630 --> 00:56:49,560 Якщо вам потрібно перевірити кілька речей, ви 1257 00:56:49,560 --> 00:56:53,000 захоче використовувати це, тому що вона буде перевіряти кожен раз тут. 1258 00:56:53,000 --> 00:56:58,060 Так що це буде працювати через і, якщо це більше, ніж або дорівнює 90, 1259 00:56:58,060 --> 00:56:59,160 він збирається друкувати що. 1260 00:56:59,160 --> 00:57:00,530 1261 00:57:00,530 --> 00:57:03,600 І він працюватиме через і перевірити кожен один з них. 1262 00:57:03,600 --> 00:57:06,444 >> АУДИТОРІЯ: Так що це буде більш помилок, ніж [нерозбірливо]. 1263 00:57:06,444 --> 00:57:07,735 Чи буде це як [нерозбірливо]? 1264 00:57:07,735 --> 00:57:10,990 1265 00:57:10,990 --> 00:57:15,740 >> Елісон: Питання чи буде це баггі або це робити те, що ви хочете. 1266 00:57:15,740 --> 00:57:19,830 Це дійсно залежить від того, що ви хочете від вашої програми. 1267 00:57:19,830 --> 00:57:22,291 >> Аудиторія: Я маю на увазі, якби ви поклали 90 в. 1268 00:57:22,291 --> 00:57:23,290 Елісон: Якщо поставити 90-- 1269 00:57:23,290 --> 00:57:24,206 АУДИТОРІЯ: [нерозбірливо]. 1270 00:57:24,206 --> 00:57:25,584 1271 00:57:25,584 --> 00:57:27,250 Габріель: Ви збираєтеся отримати дві речі. 1272 00:57:27,250 --> 00:57:28,916 Елісон: Ви збираєтеся отримати дві речі. 1273 00:57:28,916 --> 00:57:29,420 Так, два. 1274 00:57:29,420 --> 00:57:32,420 1275 00:57:32,420 --> 00:57:33,920 >> Роб Боуден: Два? 1276 00:57:33,920 --> 00:57:34,580 >> Елісон: Ні. 1277 00:57:34,580 --> 00:57:35,288 >> Роб Боуден: Чотири. 1278 00:57:35,288 --> 00:57:37,070 1279 00:57:37,070 --> 00:57:40,070 Якщо поставити 90, він збирається сказати вам отримав A, ви отримали B, ви отримали C, 1280 00:57:40,070 --> 00:57:40,545 Ви отримали D. 1281 00:57:40,545 --> 00:57:41,461 >> АУДИТОРІЯ: [нерозбірливо]. 1282 00:57:41,461 --> 00:57:42,196 1283 00:57:42,196 --> 00:57:42,820 Аллісон: справа. 1284 00:57:42,820 --> 00:57:44,778 Так що я, залежить від того, що хочу від вас програми. 1285 00:57:44,778 --> 00:57:47,050 Іноді вам потрібно перевірити кілька речей. 1286 00:57:47,050 --> 00:57:49,970 1287 00:57:49,970 --> 00:57:55,270 Ви отримаєте набагато глибше в те, що хороший дизайн, як ви йдете вперед. 1288 00:57:55,270 --> 00:57:57,090 Важливо розуміють, що це 1289 00:57:57,090 --> 00:58:01,090 перевірятиме всі чотири умови тут. 1290 00:58:01,090 --> 00:58:05,860 Тоді як якщо б це було, якщо ще, якщо ще якщо ще, було б вдарити, що перший випадок, 1291 00:58:05,860 --> 00:58:07,950 було б надрукувати ви отримали A і зробити. 1292 00:58:07,950 --> 00:58:10,250 >> Роб Боуден: навіть якщо ми вирішили змінити це, якщо 1293 00:58:10,250 --> 00:58:13,880 і більше або дорівнює 90, Якщо і більше або дорівнює 80, 1294 00:58:13,880 --> 00:58:19,710 і менше, ніж або дорівнює 89, якщо N більше або дорівнює 70, 1295 00:58:19,710 --> 00:58:23,830 і п менше або дорівнює 79, так, що буде правильним. 1296 00:58:23,830 --> 00:58:27,190 Це буде робити те, що ми хочемо, але він як і раніше перевіряє кожен це. 1297 00:58:27,190 --> 00:58:34,050 >> Так у той час як у першому випадку, якщо ми введіть 90 с тільки якщо інакше, якщо ще, якщо, 1298 00:58:34,050 --> 00:58:37,300 і ми входимо 90, то він збирається виправити. 1299 00:58:37,300 --> 00:58:39,615 Він перевірить перший один, друк ви отримали A, 1300 00:58:39,615 --> 00:58:42,590 пропустити все, бо це вже знайшов той, який працює. 1301 00:58:42,590 --> 00:58:46,360 Всі випадки є взаємовиключними на основі, якщо ще, якщо ще, якщо. 1302 00:58:46,360 --> 00:58:48,630 Так що виконуватиму Перший, якщо, то це буде зроблено. 1303 00:58:48,630 --> 00:58:49,790 Це буде йти до кінця. 1304 00:58:49,790 --> 00:58:52,400 >> Тоді як, якщо ми змінимо це буде те, що я був 1305 00:58:52,400 --> 00:58:54,204 говорячи з менш ніж або дорівнює 89. 1306 00:58:54,204 --> 00:58:55,620 Це збирається перевірити перший. 1307 00:58:55,620 --> 00:58:56,560 Це буде друкувати. 1308 00:58:56,560 --> 00:58:58,010 Це буде перевірити другий. 1309 00:58:58,010 --> 00:58:59,010 Це не збирається друкувати. 1310 00:58:59,010 --> 00:58:59,910 Перевірте третій. 1311 00:58:59,910 --> 00:59:00,620 Не в друк. 1312 00:59:00,620 --> 00:59:01,495 Перевірте четверту. 1313 00:59:01,495 --> 00:59:02,420 Тепер в друк. 1314 00:59:02,420 --> 00:59:05,380 Таким чином, в цьому випадку, якщо ще версія, так як ці випадки 1315 00:59:05,380 --> 00:59:09,120 є взаємовиключними, це краще використовувати, якщо ще, якщо ще, якщо, 1316 00:59:09,120 --> 00:59:12,970 бо буде мати менше перевірок умов 1317 00:59:12,970 --> 00:59:14,750 чим ця версія. 1318 00:59:14,750 --> 00:59:17,692 1319 00:59:17,692 --> 00:59:18,400 Аллісон: Awesome. 1320 00:59:18,400 --> 00:59:20,580 Так ще одна річ, ми можемо зробити, це перейти заяви. 1321 00:59:20,580 --> 00:59:23,104 1322 00:59:23,104 --> 00:59:25,270 В основному Перемикач займає в якої-небудь змінної, 1323 00:59:25,270 --> 00:59:28,780 в даному випадку це п і визначає цьому випадку виконати. 1324 00:59:28,780 --> 00:59:33,106 Так що це також є одним де ваші випадки повинен бути свого роду взаємовиключними. 1325 00:59:33,106 --> 00:59:35,210 1326 00:59:35,210 --> 00:59:37,940 Таким чином, в цьому випадку, якщо ми отримуємо один, це 1327 00:59:37,940 --> 00:59:42,270 збирається відповідати всі, що переменная-- незалежно від значення п 1328 00:59:42,270 --> 00:59:48,700 полягає в одному з цих випадків, так 1, 2, або 3, і роздрукувати відповідний рядок. 1329 00:59:48,700 --> 00:59:51,870 >> І тоді, якщо ви помітили, тут, у нас також є за умовчанням, 1330 00:59:51,870 --> 00:59:54,670 які ви можете з думаємо як ваша ще. 1331 00:59:54,670 --> 00:59:58,510 Так що, якщо ви вибираєте будь-яке інше число до того ж 1, 2, 3 і в цьому випадку 1332 00:59:58,510 --> 00:59:59,885 це просто буде друкувати недійсним. 1333 00:59:59,885 --> 01:00:03,690 1334 01:00:03,690 --> 01:00:08,390 Рішення, коли використовувати умовного способу в порівнянні якщо ELSES проти перемикачів збирається 1335 01:00:08,390 --> 01:00:12,590 бути щось, що ви, хлопці, буде см проектувати мудрі, як ви почнете писати 1336 01:00:12,590 --> 01:00:15,270 складніші програми, і немає ніяких жорстких правил 1337 01:00:15,270 --> 01:00:16,330 про те, коли використовувати їх. 1338 01:00:16,330 --> 01:00:17,890 Це дійсно залежить від контексту. 1339 01:00:17,890 --> 01:00:18,590 >> Роб Боуден: І тільки щоб кинути його там 1340 01:00:18,590 --> 01:00:20,131 так як це більш зручно розділі. 1341 01:00:20,131 --> 01:00:20,920 1342 01:00:20,920 --> 01:00:25,053 Вимикачі, вони, як правило, be-- так ви обмежені 1343 01:00:25,053 --> 01:00:27,430 в ряді напрямків ви можете використовувати їх, бо IFS, 1344 01:00:27,430 --> 01:00:30,100 умова може бути досить все, що ви хочете. 1345 01:00:30,100 --> 01:00:33,410 З перемикається випадки повинні бути числами, 1346 01:00:33,410 --> 01:00:37,770 або технічно вони можуть бути символи, але символи, як ми побачимо, це всього лише числа. 1347 01:00:37,770 --> 01:00:44,250 Таким чином, вони повинні бути цифри, але перемикачі дійсно більш ефективним, ніж якби 1348 01:00:44,250 --> 01:00:50,060 ще якщо ще, якщо, бо навіть беручи приклад before-- добре, 1349 01:00:50,060 --> 01:00:51,486 Приклад класу здається хорошою. 1350 01:00:51,486 --> 01:00:52,550 1351 01:00:52,550 --> 01:00:57,080 >> Ну, скажімо, ось, ми замість того, щоб робити це як якщо ще, якщо ще, якщо сценарій. 1352 01:00:57,080 --> 01:01:00,930 Так що, якщо н дорівнює дорівнює 1, роздрукувати ви вибрали невелику кількість. 1353 01:01:00,930 --> 01:01:04,490 Якщо ще при п дорівнює дорівнює 2, Ви вибрали середній ряд. 1354 01:01:04,490 --> 01:01:06,550 Інакше, якщо одно дорівнює 3, високий. 1355 01:01:06,550 --> 01:01:08,060 Інакше недійсним. 1356 01:01:08,060 --> 01:01:09,820 >> Так скажімо, це було нашим сценарієм. 1357 01:01:09,820 --> 01:01:14,060 Так скажімо, ми входимо 4, тому ми очікуємо, недійсним. 1358 01:01:14,060 --> 01:01:17,410 Таким чином, що, якщо ще, якщо ще якщо підхід буде працювати це 1359 01:01:17,410 --> 01:01:18,740 перевіряє перша умова. 1360 01:01:18,740 --> 01:01:19,776 Це не задовольнив. 1361 01:01:19,776 --> 01:01:21,150 Таким чином, ми перевірити друга умова. 1362 01:01:21,150 --> 01:01:21,940 Це не задовольнив. 1363 01:01:21,940 --> 01:01:23,023 Перевірте третя умова. 1364 01:01:23,023 --> 01:01:23,640 Не задоволені. 1365 01:01:23,640 --> 01:01:26,650 Так ми йдемо в іншому місці і роздрукувати недійсним. 1366 01:01:26,650 --> 01:01:30,169 >> Те, як перемикач роботи це компілює 1367 01:01:30,169 --> 01:01:31,960 в те, що ми збираємося називати таблицю переходів. 1368 01:01:31,960 --> 01:01:33,180 1369 01:01:33,180 --> 01:01:37,120 Основна ідея в тому, що при введенні 4, 1370 01:01:37,120 --> 01:01:39,090 він може відразу перейти в стан за замовчуванням. 1371 01:01:39,090 --> 01:01:41,460 Для цього не потрібно, щоб перевірити я такий випадок 1? 1372 01:01:41,460 --> 01:01:42,350 Неа, це не він. 1373 01:01:42,350 --> 01:01:42,850 Випадок 2? 1374 01:01:42,850 --> 01:01:43,240 Нє-а. 1375 01:01:43,240 --> 01:01:43,770 Випадок 3? 1376 01:01:43,770 --> 01:01:44,270 Нє-а. 1377 01:01:44,270 --> 01:01:45,090 За замовчуванням. 1378 01:01:45,090 --> 01:01:47,610 ОК, це має бути, де я хочу, а потім виконати це. 1379 01:01:47,610 --> 01:01:49,590 Ні, це відразу ж переходить в стан за замовчуванням. 1380 01:01:49,590 --> 01:01:51,900 Чи це я входжу 2, це одразу піду до 2 1381 01:01:51,900 --> 01:01:54,060 без необхідності проходити через разі 1. 1382 01:01:54,060 --> 01:01:57,820 >> Так що в цьому шляху, реально в наш час це 1383 01:01:57,820 --> 01:02:00,250 не те, що більша частина приросту ефективності. 1384 01:02:00,250 --> 01:02:02,880 Зазвичай комп'ютери досить швидко, і це не так вже й велика. 1385 01:02:02,880 --> 01:02:07,270 Але це той випадок, коли перемикачі швидше. 1386 01:02:07,270 --> 01:02:10,380 Якщо ви дійсно намагаєтеся оптимізувати, використовувати перемикач. 1387 01:02:10,380 --> 01:02:11,980 1388 01:02:11,980 --> 01:02:12,710 >> Елісон: Прохолодний. 1389 01:02:12,710 --> 01:02:15,270 А то у нас потрійний оператор. 1390 01:02:15,270 --> 01:02:19,470 Так що я знаю, я вже згадував раніше слово синтаксичний цукор. 1391 01:02:19,470 --> 01:02:24,160 Так що це просто речі, які роблять ваш код набагато більш коротким. 1392 01:02:24,160 --> 01:02:25,590 Так що це один з тих випадків. 1393 01:02:25,590 --> 01:02:31,430 >> Так потрійний оператор знак питання товстої кишки, як ми бачимо, в рядку лінії 1394 01:02:31,430 --> 01:02:35,810 и дорівнює п більше, ніж 100 Знак питання високої товстої кишки низка. 1395 01:02:35,810 --> 01:02:41,800 Так в основному, як це працює, це N більше, ніж 100 являє собою стан. 1396 01:02:41,800 --> 01:02:43,674 Так що я думаю, що це може мати сенс. 1397 01:02:43,674 --> 01:02:44,840 Це як поставити запитання. 1398 01:02:44,840 --> 01:02:47,320 Це говорить про, п більше, ніж 100. 1399 01:02:47,320 --> 01:02:48,340 Хто знає? 1400 01:02:48,340 --> 01:02:50,750 І якщо це має значення правда, він збирається дати вам 1401 01:02:50,750 --> 01:02:54,270 Перше, що це перераховані в ньому, який є високою. 1402 01:02:54,270 --> 01:02:55,840 В іншому випадку це буде давати вам низький. 1403 01:02:55,840 --> 01:03:01,210 Так що це просто дуже простий і ефективний спосіб зробити як якщо в іншому місці. 1404 01:03:01,210 --> 01:03:02,780 Ось і все це. 1405 01:03:02,780 --> 01:03:07,450 >> І якби ми мали написати це як якщо ще умовний, 1406 01:03:07,450 --> 01:03:12,480 було б, якщо п більше 100, повернутися висока. 1407 01:03:12,480 --> 01:03:14,220 В іншому випадку, повернутися на низькому рівні. 1408 01:03:14,220 --> 01:03:17,570 Це просто набагато більш коротким спосіб написання його. 1409 01:03:17,570 --> 01:03:27,090 >> Роб Боуден: Так що це окремий приклад є всякий раз, коли ви робите щось 1410 01:03:27,090 --> 01:03:30,190 як це, це шаблон де я використовую потрійних дуже часто. 1411 01:03:30,190 --> 01:03:31,540 1412 01:03:31,540 --> 01:03:35,460 Таким чином, ми не говорили про рамках ще, але я ненавиджу бачити коми струни с. 1413 01:03:35,460 --> 01:03:39,150 Якщо п більше, ніж 100, з одно високим. 1414 01:03:39,150 --> 01:03:40,660 В іншому випадку, з рівним низьким. 1415 01:03:40,660 --> 01:03:45,070 Так що картини, ці п'ять ліній коду буквально 100% часу 1416 01:03:45,070 --> 01:03:49,800 можуть бути передані в будь був там з потрійних. 1417 01:03:49,800 --> 01:03:52,340 Так потрійний, одного рядка коду. 1418 01:03:52,340 --> 01:03:54,640 Якщо ще, п'ять. 1419 01:03:54,640 --> 01:03:56,910 Ось приклад, який я вказати з кожного часу. 1420 01:03:56,910 --> 01:03:59,250 Це буде чудове місце для потрійний оператор. 1421 01:03:59,250 --> 01:04:00,647 Це так чисто. 1422 01:04:00,647 --> 01:04:01,980 Але люди, як правило, ніколи не використовувати його. 1423 01:04:01,980 --> 01:04:06,140 1424 01:04:06,140 --> 01:04:08,030 >> Елісон: Приберіть це Гейб. 1425 01:04:08,030 --> 01:04:11,110 >> Габріель: Отже, тепер ви, хлопці, все дізнався в лекції на цьому тижні 1426 01:04:11,110 --> 01:04:13,420 що все в Комп'ютер в двійковій, чи не так? 1427 01:04:13,420 --> 01:04:14,570 Так само, як лампи тут. 1428 01:04:14,570 --> 01:04:16,492 Ви можете бути включений і виключений. 1429 01:04:16,492 --> 01:04:18,450 І з усього, я маю на увазі буквально все. 1430 01:04:18,450 --> 01:04:24,272 Деякі цифри і символи і рядки, і навіть код, який ви пишете, коли 1431 01:04:24,272 --> 01:04:26,480 це буде скомпільовано на машині Код і все в такому дусі, що, 1432 01:04:26,480 --> 01:04:29,230 так що все це зводиться до 0 та 1 ". 1433 01:04:29,230 --> 01:04:34,540 >> І тому, коли ми маємо справу з цілими числами, які 1434 01:04:34,540 --> 01:04:38,000 є те, що це технічно дуже просто, ми повинні бути в змозі робити такі речі, 1435 01:04:38,000 --> 01:04:40,630 як додавати їх, що є ймовірно, один з найпростіших речей 1436 01:04:40,630 --> 01:04:42,300 Ви можете зробити, щоб два цілих числа, чи не так? 1437 01:04:42,300 --> 01:04:47,410 Так додавання і віднімання працює тільки як це працює в десятковій системі числення, 1438 01:04:47,410 --> 01:04:50,780 крім ось це двійковий, чи не так? 1439 01:04:50,780 --> 01:04:52,090 Так що це в базі два. 1440 01:04:52,090 --> 01:04:54,070 Так що додайте 1 плюс 1. 1441 01:04:54,070 --> 01:04:57,020 Це дає 0 і 1 переноситься. 1442 01:04:57,020 --> 01:05:01,335 І просто продовжувати робити, що, Так що тепер приходить більш цікаве питання. 1443 01:05:01,335 --> 01:05:03,730 1444 01:05:03,730 --> 01:05:07,710 >> Ми знаємо, як уявляють все цілі позитивні числа в комп'ютері, 1445 01:05:07,710 --> 01:05:09,870 але давайте зробимо цю вправу. 1446 01:05:09,870 --> 01:05:15,240 Уявіть, що ви, хлопці, все в 1960 році, або щось намагається створити комп'ютер, 1447 01:05:15,240 --> 01:05:19,950 і ви повинні придумати з спосіб зберігання мінус 1, 1448 01:05:19,950 --> 01:05:22,554 Наприклад, будь-яка або мінус число в цьому відношенні. 1449 01:05:22,554 --> 01:05:23,470 Як би ви це зробили? 1450 01:05:23,470 --> 01:05:27,820 1451 01:05:27,820 --> 01:05:29,220 Будь-які ідеї? 1452 01:05:29,220 --> 01:05:31,302 Просто кинути що-небудь на мене. 1453 01:05:31,302 --> 01:05:32,264 Да? 1454 01:05:32,264 --> 01:05:39,480 >> АУДИТОРІЯ: [нерозбірливо] призначити спеціальна якщо ваш [нерозбірливо]. 1455 01:05:39,480 --> 01:05:42,590 >> Габріель: Ви можете призначити спеціальний біт, який буде 0 або 1. 1456 01:05:42,590 --> 01:05:45,590 Скажемо одне, якщо це позитивно і 0, якщо він негативний. 1457 01:05:45,590 --> 01:05:48,171 І тоді як інша частина біт просто, щоб зберегти номер. 1458 01:05:48,171 --> 01:05:48,670 Прохолодний. 1459 01:05:48,670 --> 01:05:49,990 Так що це дуже хороша ідея. 1460 01:05:49,990 --> 01:05:51,550 У нас є, я не знаю ,, 200. 1461 01:05:51,550 --> 01:05:54,720 І якщо перший біт дорівнює включений, то це плюс 200. 1462 01:05:54,720 --> 01:05:57,270 Якщо вимкнено, це мінус 200. 1463 01:05:57,270 --> 01:05:58,380 Прохолодний. 1464 01:05:58,380 --> 01:06:01,350 >> Існує тільки одна невелика Проблема з цим, 1465 01:06:01,350 --> 01:06:05,370 який, якщо ми спробуємо підбити підсумок речей. 1466 01:06:05,370 --> 01:06:18,910 Отже, уявіть, у нас є 11 111 тут, і ми підбиваючи це з 00100 завгодно. 1467 01:06:18,910 --> 01:06:21,630 Якщо ці двоє будуть позитивними, це нормально. 1468 01:06:21,630 --> 01:06:24,470 Але тоді, якщо один з їх негативне, як 1469 01:06:24,470 --> 01:06:27,410 скажемо, що це трохи тут це той, який відповідає 1470 01:06:27,410 --> 01:06:31,390 for-- я збираюся зробити separate-- таким чином, цей означає, що це число тут 1471 01:06:31,390 --> 01:06:31,970 позитивна. 1472 01:06:31,970 --> 01:06:34,450 Це означає, що один цей число тут негативний, чи не так? 1473 01:06:34,450 --> 01:06:37,010 >> Але потім, коли ти збирається підвести їх, ви 1474 01:06:37,010 --> 01:06:40,180 потрібно, якщо заява говорячи про, якщо це 0, 1475 01:06:40,180 --> 01:06:43,479 Потім моя сума буде щось інше, чи не так? 1476 01:06:43,479 --> 01:06:45,270 Таким чином, є небагато більш розумний спосіб зробити 1477 01:06:45,270 --> 01:06:48,520 що, що називається в додатковому. 1478 01:06:48,520 --> 01:06:52,350 Тому в основному те, що ми зробити, ми визначаємо мінус 1 1479 01:06:52,350 --> 01:06:57,250 бути річ, що якщо ми додаємо до 1 дає нам 0. 1480 01:06:57,250 --> 01:06:59,470 1481 01:06:59,470 --> 01:07:00,860 Дозвольте мені повторити це. 1482 01:07:00,860 --> 01:07:03,280 Так скажемо, що це тут 1. 1483 01:07:03,280 --> 01:07:08,110 1484 01:07:08,110 --> 01:07:13,570 Що це те, що природно в позитивних чисел 1485 01:07:13,570 --> 01:07:15,570 додав до цього дає нам 0? 1486 01:07:15,570 --> 01:07:19,150 1487 01:07:19,150 --> 01:07:21,030 Що робити, якщо ми намагаємося, щоб додати його до цього числа? 1488 01:07:21,030 --> 01:07:22,830 1489 01:07:22,830 --> 01:07:28,032 Ми збираємося have-- Отже, давайте додамо. 1490 01:07:28,032 --> 01:07:32,820 1491 01:07:32,820 --> 01:07:38,065 Ми збираємося мати 1 плюс 1 0, а потім він переноситься. 1492 01:07:38,065 --> 01:07:40,160 1493 01:07:40,160 --> 01:07:45,490 А потім ми збираємося, щоб отримати 0 раз. 1494 01:07:45,490 --> 01:07:47,730 1495 01:07:47,730 --> 01:07:48,820 Я отримую плутати. 1496 01:07:48,820 --> 01:07:51,670 І ви збираєтеся отримати 0 і 0 і 0 і 0 і 0 і 0. 1497 01:07:51,670 --> 01:07:52,450 Багато 0-их. 1498 01:07:52,450 --> 01:07:56,240 >> У самий останній один, ми не буде в змозі нести його на, 1499 01:07:56,240 --> 01:07:59,614 бо, скажімо, ми тільки справа з одного байта, так що тільки 8 біт. 1500 01:07:59,614 --> 01:08:02,780 Так що комп'ютер робить за замовчуванням просто забуває про те, що [нерозбірливо], 1501 01:08:02,780 --> 01:08:03,279 Добре? 1502 01:08:03,279 --> 01:08:04,530 1503 01:08:04,530 --> 01:08:06,880 Так що це те, що називається в в додатковому. 1504 01:08:06,880 --> 01:08:15,180 Ми просто визначаємо мінус 1, щоб бути річ тут, що якщо додати, що до 1 1505 01:08:15,180 --> 01:08:15,995 дасть вам 0. 1506 01:08:15,995 --> 01:08:17,609 1507 01:08:17,609 --> 01:08:20,180 І це дуже здорово бо ми насправді не 1508 01:08:20,180 --> 01:08:24,090 потрібно пізно реалізувати другий тип суму 1509 01:08:24,090 --> 01:08:26,590 залежно від того, чи є що негативне або позитивне число. 1510 01:08:26,590 --> 01:08:27,465 Чи має це сенс? 1511 01:08:27,465 --> 01:08:28,740 1512 01:08:28,740 --> 01:08:32,370 >> Так що, одне, що ми робимо тут для того, щоб перетворити 1513 01:08:32,370 --> 01:08:38,550 між позитивним і негативним ціле число, то ми перевернути все, 1514 01:08:38,550 --> 01:08:40,930 а потім додати 1 до цього числа. 1515 01:08:40,930 --> 01:08:43,140 Якщо ви спробуєте зробити це самостійно на листку паперу, 1516 01:08:43,140 --> 01:08:44,681 Ви будете бачити, що має сенс. 1517 01:08:44,681 --> 01:08:51,000 Але якщо я візьму цей номер тут, це п'ять. 1518 01:08:51,000 --> 01:08:54,859 Так що, якщо я перевернути все Тут, так 1, 1, 1, 1, 1. 1519 01:08:54,859 --> 01:08:55,880 1520 01:08:55,880 --> 01:08:57,830 Flip, фліп, фліп. 1521 01:08:57,830 --> 01:09:00,130 А потім я додаю до нього 1. 1522 01:09:00,130 --> 01:09:02,750 Я збираюся мати точно мінус 5. 1523 01:09:02,750 --> 01:09:03,250 Добре? 1524 01:09:03,250 --> 01:09:06,220 >> Цей вид має сенс, тому що, якщо Ви намагаєтеся підвести це з числом 1525 01:09:06,220 --> 01:09:10,229 що у нас було раніше, що was-- давайте перевернути цей раз. 1526 01:09:10,229 --> 01:09:12,999 Це був 101 і багато 0-х. 1527 01:09:12,999 --> 01:09:13,795 1528 01:09:13,795 --> 01:09:15,670 При спробі додати їх два числа разом, 1529 01:09:15,670 --> 01:09:16,961 Ви будете мати точно 0. 1530 01:09:16,961 --> 01:09:18,920 1531 01:09:18,920 --> 01:09:19,460 Добре. 1532 01:09:19,460 --> 01:09:19,884 Є питання? 1533 01:09:19,884 --> 01:09:20,759 >> АУДИТОРІЯ: [нерозбірливо] 1534 01:09:20,759 --> 01:09:25,790 1535 01:09:25,790 --> 01:09:27,280 >> Габріель: Що ти маєш на увазі? 1536 01:09:27,280 --> 01:09:29,240 >> АУДИТОРІЯ: Негативні до позитивний [нерозбірливо]. 1537 01:09:29,240 --> 01:09:33,215 >> Габріель: Ні, ви переключаєте і додати 1 завжди. 1538 01:09:33,215 --> 01:09:34,081 1539 01:09:34,081 --> 01:09:34,580 Так. 1540 01:09:34,580 --> 01:09:36,910 1541 01:09:36,910 --> 01:09:39,680 ОК, так що персонажі також кодуються виконавчі файли. 1542 01:09:39,680 --> 01:09:42,649 У нас є таблиця ASCII, як ви Також бачив в лекції, чи не так? 1543 01:09:42,649 --> 01:09:45,040 Так що це в основному відображення речей. 1544 01:09:45,040 --> 01:09:50,960 І тут я не можу не підкреслити, що за комп'ютером, і 65 1545 01:09:50,960 --> 01:09:52,770 буквально те ж саме. 1546 01:09:52,770 --> 01:10:03,430 Так що, якщо я пишу щось на зразок напівкоксу з одно, я міг у той же час 1547 01:10:03,430 --> 01:10:06,890 просто написати 65 ось, і це буде точно такий же, ОК? 1548 01:10:06,890 --> 01:10:08,470 Там немає ніякої різниці. 1549 01:10:08,470 --> 01:10:12,420 >> Ми, як правило, мають тенденцію ставити символи в змінних типу. 1550 01:10:12,420 --> 01:10:16,770 Чар, не тому, що вони по суті зробив для цього, але тому, що 1551 01:10:16,770 --> 01:10:18,050 з конвенції людини. 1552 01:10:18,050 --> 01:10:22,410 Але ви можете просто мати справу з цілими числами замість змінних типу CHAR, 1553 01:10:22,410 --> 01:10:23,490 і вам буде добре. 1554 01:10:23,490 --> 01:10:28,410 Тільки фактична різниця між напівкоксу с і INT I 1555 01:10:28,410 --> 01:10:31,960 є те, що інтервал має чотири байта в найбільш системи, в той час як символ має один байт. 1556 01:10:31,960 --> 01:10:33,070 1557 01:10:33,070 --> 01:10:35,460 Вони, по суті, Те ж саме з точки зору даних. 1558 01:10:35,460 --> 01:10:36,990 1559 01:10:36,990 --> 01:10:37,990 Так що буде друкувати тут? 1560 01:10:37,990 --> 01:10:43,780 Тут ми друку цифру за допомогою Printf з плюсом 1, і так само, як цілі числа, 1561 01:10:43,780 --> 01:10:46,240 символи можуть бути підведені, так символи можуть бути підведені. 1562 01:10:46,240 --> 01:10:47,890 Так що це точно 65. 1563 01:10:47,890 --> 01:10:49,950 Так що це буде 66, і тут у нас є 1564 01:10:49,950 --> 01:10:56,860 65 плюс трохи мінус великий, який буде, я не знаю. 1565 01:10:56,860 --> 01:11:00,900 Але це буде точно розрив між заголовними буквами 1566 01:11:00,900 --> 01:11:07,800 і і дрібніші букви, так ми збираємося, щоб отримати мале а, чи не так? 1567 01:11:07,800 --> 01:11:08,300 Так. 1568 01:11:08,300 --> 01:11:11,740 Так це буде роздрукувати характер, який є точно, це один. 1569 01:11:11,740 --> 01:11:12,260 Добре? 1570 01:11:12,260 --> 01:11:12,860 Є питання? 1571 01:11:12,860 --> 01:11:16,320 1572 01:11:16,320 --> 01:11:19,430 >> Тут ми маємо купу різні Типи числових змінних. 1573 01:11:19,430 --> 01:11:20,620 Ми вже говоримо про міжнар. 1574 01:11:20,620 --> 01:11:21,740 1575 01:11:21,740 --> 01:11:27,760 Поплавок це просто спосіб to-- це дійсно Забавно, тому що, коли я вперше дізнався, 1576 01:11:27,760 --> 01:11:32,320 програмувати назад в день з Python, перша програма, я коли-небудь 1577 01:11:32,320 --> 01:11:37,480 пробував писати, я побачив, що там було тип називається в і тип називається поплавок. 1578 01:11:37,480 --> 01:11:39,800 І поплавок був для всіх дійсних чисел. 1579 01:11:39,800 --> 01:11:43,290 Тоді я запитав, чому Я ніколи використовувати Int тоді? 1580 01:11:43,290 --> 01:11:45,590 Тому що, якщо я можу використовувати всі дійсні числа з плаваючою точкою, 1581 01:11:45,590 --> 01:11:47,120 Я б просто припинити використання цілими, чи не так? 1582 01:11:47,120 --> 01:11:49,550 Тому що реальні цифри так само, як більш загальний. 1583 01:11:49,550 --> 01:11:51,820 1584 01:11:51,820 --> 01:11:54,060 >> Виявляється, що це не має місце в комп'ютерах 1585 01:11:54,060 --> 01:11:58,480 бо вони по суті різні речі. 1586 01:11:58,480 --> 01:12:01,470 Так чисел і плаває, операції, які ви робите з ними 1587 01:12:01,470 --> 01:12:04,739 істотно відрізняються, тому що шляху, що вони зберігаються, добре? 1588 01:12:04,739 --> 01:12:07,280 Ми збираємося поговорити трохи трохи більше про те, що в одну секунду. 1589 01:12:07,280 --> 01:12:09,110 >> Так двічі просто більше поплавок. 1590 01:12:09,110 --> 01:12:12,830 Зазвичай у більшості систем, поплавок чотири байта, так само, як междунар. 1591 01:12:12,830 --> 01:12:15,440 І двічі на вісім байт. 1592 01:12:15,440 --> 01:12:21,450 Довго довго насправді всього лише символ що ви додаєте до типу як междунар. 1593 01:12:21,450 --> 01:12:24,040 Ви говорите, що давним-INT, як це. 1594 01:12:24,040 --> 01:12:28,550 Давним INT х, щоб зробити його більше. 1595 01:12:28,550 --> 01:12:32,310 Таким чином, в більшості систем, що дасть вісім байт замість звичайних чотирьох. 1596 01:12:32,310 --> 01:12:35,620 І ви можете впасти в, так що він може просто сказати довго довго, 1597 01:12:35,620 --> 01:12:37,240 і що працює надто, ОК? 1598 01:12:37,240 --> 01:12:42,850 Ви також можете робити інші речі, як непідписаних INT, або знову тільки без знака 1599 01:12:42,850 --> 01:12:43,680 також працюватиме. 1600 01:12:43,680 --> 01:12:49,370 І, що б зробити х бути змінної як все позитивне, 1601 01:12:49,370 --> 01:12:53,231 так що ви не можете насправді мають негативний Цифри в дорозі, що ми бачили тут. 1602 01:12:53,231 --> 01:12:56,484 1603 01:12:56,484 --> 01:12:58,650 Так наступний чудовий з плаваючою точкою і точність. 1604 01:12:58,650 --> 01:13:01,890 Це одна з причин, чому вам хочете використовувати цілими, а не плаває, 1605 01:13:01,890 --> 01:13:04,370 тому Інтс 100% точним, чи не так? 1606 01:13:04,370 --> 01:13:06,170 Це саме те, що число. 1607 01:13:06,170 --> 01:13:11,910 Для плаваючих точок, якщо вас сказати відповідь дорівнює 1 над 10-- 1608 01:13:11,910 --> 01:13:14,690 Я, виявляється, є точна Програма тут, float.c. 1609 01:13:14,690 --> 01:13:16,390 1610 01:13:16,390 --> 01:13:19,420 Це виводить до 20 знаків після коми. 1611 01:13:19,420 --> 01:13:23,270 1 ділиться на 10, і що зазвичай становить 0,1, чи не так? 1612 01:13:23,270 --> 01:13:27,910 Але от якщо ми робимо плавати, а потім ми запустити його, 1613 01:13:27,910 --> 01:13:30,320 ми бачимо, що це не зовсім 0,1. 1614 01:13:30,320 --> 01:13:33,570 Це 0,149 щось. 1615 01:13:33,570 --> 01:13:35,570 >> І чому? 1616 01:13:35,570 --> 01:13:40,390 Тому що ви не можете насправді являють собою кожен єдино можливим реальне число в пам'яті 1617 01:13:40,390 --> 01:13:42,730 бо є незліченну багато з них. 1618 01:13:42,730 --> 01:13:48,360 Так що ми технічно тільки в стані являють собою кінцеве кількість з них 1619 01:13:48,360 --> 01:13:50,470 з кінцевим кількістю даних. 1620 01:13:50,470 --> 01:13:52,050 Але це дійсно цікаво. 1621 01:13:52,050 --> 01:13:54,920 Тепер це благає Питання про те, як ви б 1622 01:13:54,920 --> 01:13:59,299 йти про представляють це з битами, чи не так? 1623 01:13:59,299 --> 01:14:00,340 Так як зберігаються плаває? 1624 01:14:00,340 --> 01:14:01,970 1625 01:14:01,970 --> 01:14:03,730 З цілих було легко. 1626 01:14:03,730 --> 01:14:06,690 Але з поплавками ви хочете Для максимального збільшення, 1627 01:14:06,690 --> 01:14:10,530 і ви хочете, щоб мати можливість представляти Величезні номера і дуже маленькі номери, як 1628 01:14:10,530 --> 01:14:14,210 0.000001 одночасно. 1629 01:14:14,210 --> 01:14:15,180 Отже, ще раз, та ж гра. 1630 01:14:15,180 --> 01:14:20,470 Хто-небудь є ідеї, як ми могли йти про представляють поплавок в пам'яті? 1631 01:14:20,470 --> 01:14:26,820 1632 01:14:26,820 --> 01:14:27,970 Просто викинути що-небудь. 1633 01:14:27,970 --> 01:14:29,930 1634 01:14:29,930 --> 01:14:30,856 Так, будь ласка. 1635 01:14:30,856 --> 01:14:33,552 >> АУДИТОРІЯ: [нерозбірливо], як якщо це було два цілих і один 1636 01:14:33,552 --> 01:14:36,890 будучи [нерозбірливо] і одна істота все після коми. 1637 01:14:36,890 --> 01:14:37,640 Габріель: ОК, круто. 1638 01:14:37,640 --> 01:14:40,300 Так два різних числа. 1639 01:14:40,300 --> 01:14:45,260 Ви можете мати 12,45, так що це 12 і 45. 1640 01:14:45,260 --> 01:14:45,890 Хороший. 1641 01:14:45,890 --> 01:14:46,973 Що перш ніж ви збираєтеся говорити? 1642 01:14:46,973 --> 01:14:48,420 1643 01:14:48,420 --> 01:14:49,430 Те ж саме? 1644 01:14:49,430 --> 01:14:49,930 Да? 1645 01:14:49,930 --> 01:14:55,630 >> АУДИТОРІЯ: [нерозбірливо] позначення де ви відокремити базу. 1646 01:14:55,630 --> 01:14:58,910 >> Габріель: Науково позначення, так, це, як правило, те, що відбувається. 1647 01:14:58,910 --> 01:15:01,350 Так що це те, що називається мантиса. 1648 01:15:01,350 --> 01:15:06,490 Ось що насправді число, а потім показник ступеня 1649 01:15:06,490 --> 01:15:08,780 просто де кома, чи не так? 1650 01:15:08,780 --> 01:15:13,720 Так що це буде щось виду 1, 2, 3, 4, 5 разів 10 1651 01:15:13,720 --> 01:15:15,000 в мінус 4. 1652 01:15:15,000 --> 01:15:17,800 Я просто зрозумів, that-- да, точно. 1653 01:15:17,800 --> 01:15:23,372 І тоді це 10 в мінус 4 є визначатиме, де кома, ОК? 1654 01:15:23,372 --> 01:15:24,330 У Бразилії ми використовуємо кому. 1655 01:15:24,330 --> 01:15:26,795 От ви, хлопці, використовувати точку. 1656 01:15:26,795 --> 01:15:27,640 Так точка. 1657 01:15:27,640 --> 01:15:28,860 1658 01:15:28,860 --> 01:15:34,840 >> І це здорово, тому що тоді ви можете зосередитися багато ваших бітів на цього хлопця 1659 01:15:34,840 --> 01:15:40,863 тут, на мантиси, і тоді це буде фактична точність. 1660 01:15:40,863 --> 01:15:41,920 1661 01:15:41,920 --> 01:15:47,175 І ви можете зробити це або в десяткового або в системі, заснованої двійковій. 1662 01:15:47,175 --> 01:15:49,781 Існують різні способи здійснити це. 1663 01:15:49,781 --> 01:15:50,280 Питання? 1664 01:15:50,280 --> 01:15:55,918 1665 01:15:55,918 --> 01:15:56,418 Да? 1666 01:15:56,418 --> 01:15:57,508 1667 01:15:57,508 --> 01:15:59,841 АУДИТОРІЯ: Скільки місць після десяткової [нерозбірливо]? 1668 01:15:59,841 --> 01:16:05,240 1669 01:16:05,240 --> 01:16:12,610 >> Габріель: Це складне питання, бо це ніколи не дійсно на 100% точним, 1670 01:16:12,610 --> 01:16:15,680 тому що, як ви бачите тут, на деякі номери це 100% точним. 1671 01:16:15,680 --> 01:16:20,350 Я вважаю, якщо ми ставимо 0,5 тут, це буде 100% точним. 1672 01:16:20,350 --> 01:16:22,220 Це буде 0,500000. 1673 01:16:22,220 --> 01:16:24,170 Так що в цьому випадку, це прекрасно. 1674 01:16:24,170 --> 01:16:27,330 Але в інших випадках, це набагато менш досконалим. 1675 01:16:27,330 --> 01:16:35,010 З мого досвіду, як до чотирьох, п'ять знаків після коми досить точним. 1676 01:16:35,010 --> 01:16:38,300 Якщо ви використовуєте подвійний, він збирається бути спосіб точніше, ніж, ОК? 1677 01:16:38,300 --> 01:16:42,750 >> Роб Боуден: Так просто кинути більш певний контекст на поплавцях, 1678 01:16:42,750 --> 01:16:46,320 Я не пам'ятаю, 100%, як в Специфікація поплавців насправді працює, 1679 01:16:46,320 --> 01:16:52,660 але я завжди пам'ятаю, що плаває почнете отримувати брудний. 1680 01:16:52,660 --> 01:16:55,460 1681 01:16:55,460 --> 01:17:00,930 Таким чином, ідея в тому, що, коли ви отримуєте дійсно, дійсно великі числа або дуже, дуже 1682 01:17:00,930 --> 01:17:03,470 малі числа, ми починаємо все гірше і гірше 1683 01:17:03,470 --> 01:17:05,860 диференціювати між двома близькими поплавців. 1684 01:17:05,860 --> 01:17:09,180 >> Так як мені подобається думати про те, з точки неточності плаваючою, 1685 01:17:09,180 --> 01:17:11,890 Є два поплавки, що якщо я намагаюся вказати їх 1686 01:17:11,890 --> 01:17:15,150 в С, незважаючи на те, що вони різні цифри, 1687 01:17:15,150 --> 01:17:17,340 вони збираються бути інтерпретувати як той же номер, 1688 01:17:17,340 --> 01:17:19,006 бо ми не можемо зберігати їх по-різному. 1689 01:17:19,006 --> 01:17:20,540 Ми повинні використовувати ті ж біти. 1690 01:17:20,540 --> 01:17:23,220 І тому, коли ми доберемося до дійсно, дійсно велика кількість, 1691 01:17:23,220 --> 01:17:28,460 говорити, як 10 до 300 або щось, що це на той момент 1692 01:17:28,460 --> 01:17:33,240 що від 10 до 300 або 5 раз 10 в 300 1693 01:17:33,240 --> 01:17:37,020 не можуть бути диференційовані від 7 раз 10 в 300. 1694 01:17:37,020 --> 01:17:39,660 Так що це досить велика різниця між двома числами. 1695 01:17:39,660 --> 01:17:43,830 >> Але потім, коли ви отримуєте вниз в нормальних речей дальності, 1696 01:17:43,830 --> 01:17:45,770 Ви, як правило, досить добре диференціації. 1697 01:17:45,770 --> 01:17:49,020 А потім, коли ви сідаєте насправді мало, ви також отримуєте досить погано знову. 1698 01:17:49,020 --> 01:17:52,529 Так як цілим букетом 0.0000, це стає досить погано. 1699 01:17:52,529 --> 01:17:53,820 Габріель: Так, так швидко записку. 1700 01:17:53,820 --> 01:17:54,670 Ніколи не робіть цього. 1701 01:17:54,670 --> 01:17:57,590 Ніколи спробувати порівняти поплавки за допомогою рівних з рівними, 1702 01:17:57,590 --> 01:18:02,800 бо навіть якщо вони майже ж, майже такий же, не те ж саме. 1703 01:18:02,800 --> 01:18:06,360 Так що ви зазвичай робите це ви відніміть їм, прийняти абсолютне значення, що, 1704 01:18:06,360 --> 01:18:12,380 і подивитися, якщо це менше, ніж 0.0001 або щось подібне, ОК? 1705 01:18:12,380 --> 01:18:12,880 І здорово. 1706 01:18:12,880 --> 01:18:16,630 Я знаю багато людей, у деякі фон на Яві, 1707 01:18:16,630 --> 01:18:19,700 особливо ті, хто зробив AP інформатика, вірно? 1708 01:18:19,700 --> 01:18:23,630 І Java є мовою що в основному базується на C, 1709 01:18:23,630 --> 01:18:26,570 у цього є кілька дуже великі різниці. 1710 01:18:26,570 --> 01:18:31,430 Але для петель, і IFS, і все в такому дусі що, вони все ж синтаксис. 1711 01:18:31,430 --> 01:18:35,240 У мене є кілька програм тут, щоб показати це. 1712 01:18:35,240 --> 01:18:37,050 >> Так, наприклад, простий привіт світ. 1713 01:18:37,050 --> 01:18:43,140 1714 01:18:43,140 --> 01:18:46,600 Це привіт світ в С, що вам Хлопці, безумовно, знайомі з, 1715 01:18:46,600 --> 01:18:49,100 і це, і це один знаходиться в Java. 1716 01:18:49,100 --> 01:18:53,100 Таким чином, в Java є це суспільного класу, привіт світ, 1717 01:18:53,100 --> 01:18:57,050 і державної статичної сили Основною, і струнні аргументи. 1718 01:18:57,050 --> 01:18:59,665 Струнні аргументи йдуть з'являтися в C в самий найближчий час. 1719 01:18:59,665 --> 01:19:00,740 1720 01:19:00,740 --> 01:19:01,990 Але давайте не будемо йти туди ще. 1721 01:19:01,990 --> 01:19:06,060 Зараз у нас є порожнеча тут, а це означає, що головний можемо вести дискусію. 1722 01:19:06,060 --> 01:19:09,220 А то у нас System.out.println, і це 1723 01:19:09,220 --> 01:19:11,140 вид еквіваленті для Printf. 1724 01:19:11,140 --> 01:19:17,150 Тут ми насправді не потрібен зворотний слеш н тому друку пров зробить це за вас. 1725 01:19:17,150 --> 01:19:19,680 Це додає зворотну косу риску н на кінці лінії. 1726 01:19:19,680 --> 01:19:22,540 1727 01:19:22,540 --> 01:19:30,415 >> Але якщо ви йдете в щось на зразок А для, ви 1728 01:19:30,415 --> 01:19:32,590 можна побачити, що вони в значній мірі те ж саме. 1729 01:19:32,590 --> 01:19:37,390 Так ініціалізації, і стан і оновлення 1730 01:19:37,390 --> 01:19:42,050 is-- я пропустив пробіл here-- вони в значній мірі те ж саме, за винятком того, Java 1731 01:19:42,050 --> 01:19:44,430 є також кілька більш високого рівня речі. 1732 01:19:44,430 --> 01:19:46,010 1733 01:19:46,010 --> 01:19:49,610 Тут ми можемо зробити плюс я і Java автоматично 1734 01:19:49,610 --> 01:19:52,730 зробити це, я тут, який є ціле число, в рядок, 1735 01:19:52,730 --> 01:19:55,200 а потім додати два рядки разом. 1736 01:19:55,200 --> 01:19:57,570 Тут, в C ми повинні зробити і% d. 1737 01:19:57,570 --> 01:20:15,310 1738 01:20:15,310 --> 01:20:18,170 Лінія тут, для виглядає точно так же. 1739 01:20:18,170 --> 01:20:37,760 >> І якщо ми подивимося на те, якщо, МСФ Також виглядати точно так же, вірно? 1740 01:20:37,760 --> 01:20:39,290 1741 01:20:39,290 --> 01:20:44,650 Так справжні великі відмінності в тих речах, які ви бачите тут. 1742 01:20:44,650 --> 01:20:47,530 Громадський статичний, порожнеча, і Потім громадського класу, якщо. 1743 01:20:47,530 --> 01:20:48,990 1744 01:20:48,990 --> 01:20:52,360 Так Java має те, що називається віртуальною машиною. 1745 01:20:52,360 --> 01:20:53,560 1746 01:20:53,560 --> 01:21:00,150 І це дуже сильно на підставі яких називається об'єктно-орієнтованого програмування, 1747 01:21:00,150 --> 01:21:04,120 що є дуже, дуже поширені парадигма для програмування в даний час. 1748 01:21:04,120 --> 01:21:10,870 І це класна річ, що ви бачите, щось від орієнтації об'єкта, 1749 01:21:10,870 --> 01:21:14,214 у створенні класу, а потім вам можна вивести об'єкти з цього класу. 1750 01:21:14,214 --> 01:21:16,380 Ми не збираємося говорити занадто багато про те, що в CS50, 1751 01:21:16,380 --> 01:21:18,213 але це, безумовно, щось дійсно здорово, 1752 01:21:18,213 --> 01:21:21,440 особливо якщо ви хочете піти в Складніший веб-розробки 1753 01:21:21,440 --> 01:21:24,050 В кінці курсу, як представити остаточний проект 1754 01:21:24,050 --> 01:21:26,430 і деякі хороші рамки та інше. 1755 01:21:26,430 --> 01:21:31,250 >> Тому в основному ідея в тому, що вам не хочу, щоб повторно реалізувати щось, 1756 01:21:31,250 --> 01:21:36,330 так ви створюєте що-небудь дуже загальний характер, як форма, 1757 01:21:36,330 --> 01:21:38,310 а потім ви створюєте різні форми від нього, 1758 01:21:38,310 --> 01:21:40,240 а потім з кожної з ці форми, ви створюєте 1759 01:21:40,240 --> 01:21:45,110 деякі більш конкретні форми в трьох розміри або щось подібне. 1760 01:21:45,110 --> 01:21:48,799 І у них є ця ієрархія вони успадковують від інших, так 1761 01:21:48,799 --> 01:21:51,840 всі функції і всі змінні, які велика форма тут має, всі вони 1762 01:21:51,840 --> 01:21:54,110 матимемо, і всі вони є матиме, і так далі і тому подібне. 1763 01:21:54,110 --> 01:21:55,640 Так ось основна ідея. 1764 01:21:55,640 --> 01:21:59,170 >> С не має, але C ++ дійсно є такою функцією. 1765 01:21:59,170 --> 01:22:02,710 І Java знаходиться під сильним впливом по об'єктно-орієнтованого підходу, 1766 01:22:02,710 --> 01:22:05,310 так ось чому ви бачите клас тут весь час. 1767 01:22:05,310 --> 01:22:10,790 І інша справа, це віртуальна машина Java. 1768 01:22:10,790 --> 01:22:13,790 Так що це, як мені здається, це дуже розумна ідея. 1769 01:22:13,790 --> 01:22:17,020 Так що люди, які винайшов Java зробив це 1770 01:22:17,020 --> 01:22:19,630 вони не хотіли, щоб компілювати свій код двічі 1771 01:22:19,630 --> 01:22:23,990 якби їм довелося запустити його в Windows, або Mac, або Linux, так що вони роблять 1772 01:22:23,990 --> 01:22:26,740 буде буквально бігти щось на зразок приладу, 1773 01:22:26,740 --> 01:22:29,630 але ви дійсно не бачите, що відбувається. 1774 01:22:29,630 --> 01:22:32,430 Таким чином, вони запустити віртуальну машину всередині вашого комп'ютера, які 1775 01:22:32,430 --> 01:22:34,940 в основному, як міні-операційна система. 1776 01:22:34,940 --> 01:22:37,920 І що операційна Мета системи в житті 1777 01:22:37,920 --> 01:22:41,430 просто запустити те, що називається байт-код. 1778 01:22:41,430 --> 01:22:47,411 >> Тому замість того, в C, то, як ми б скомпілювати це зробити, якщо, а потім запустити 1779 01:22:47,411 --> 01:22:47,910 ./if. 1780 01:22:47,910 --> 01:22:53,510 1781 01:22:53,510 --> 01:22:55,290 Я забув зворотний слеш в. 1782 01:22:55,290 --> 01:23:00,240 В Java, ви могли б зробити перший Java C скомпілювати його, if.c. 1783 01:23:00,240 --> 01:23:06,440 1784 01:23:06,440 --> 01:23:08,252 Це не крапка Java C. Це. 1785 01:23:08,252 --> 01:23:09,460 1786 01:23:09,460 --> 01:23:12,140 І тоді вам доведеться втікати не ./. 1787 01:23:12,140 --> 01:23:15,440 Ви отримаєте цей новий файл if.class, але ви не можете дійсно 1788 01:23:15,440 --> 01:23:17,980 запустити if.class тепер просто як ми робили раніше. 1789 01:23:17,980 --> 01:23:19,440 Це не є виконуваним. 1790 01:23:19,440 --> 01:23:20,630 Ви повинні запустити. 1791 01:23:20,630 --> 01:23:23,410 Ви повинні годувати його в Програма називається Java, 1792 01:23:23,410 --> 01:23:28,260 і що програма є віртуальною машини, а потім ви if.class, або, якщо. 1793 01:23:28,260 --> 01:23:28,760 Так. 1794 01:23:28,760 --> 01:23:30,890 І тоді це працює. 1795 01:23:30,890 --> 01:23:33,740 ОК, так що це свого роду Віртуальна машина відбувається. 1796 01:23:33,740 --> 01:23:37,700 С не має, що, таким чином, якби я був в поставити цю програму в машині ОС Windows, 1797 01:23:37,700 --> 01:23:40,516 він не буде працювати в С. В Java це робить. 1798 01:23:40,516 --> 01:23:41,015 Питання? 1799 01:23:41,015 --> 01:23:43,430 1800 01:23:43,430 --> 01:23:44,030 Прохолодний. 1801 01:23:44,030 --> 01:23:47,160 От якщо для супер розділі на сьогоднішній день. 1802 01:23:47,160 --> 01:23:49,462