1 00:00:00,000 --> 00:00:05,410 2 00:00:05,410 --> 00:00:08,770 >> ANDI Пен: Ми майже через всі psets. 3 00:00:08,770 --> 00:00:12,080 Справді, ми через більшість з найскладніших psets. 4 00:00:12,080 --> 00:00:14,350 Так що ми насправді просто збирається роду бризу 5 00:00:14,350 --> 00:00:16,050 через пару тижнів. 6 00:00:16,050 --> 00:00:19,520 >> Ми збираємося, щоб почати говорити про наших Остаточні проекти, події придумувати 7 00:00:19,520 --> 00:00:21,320 в найближчі кілька тижнів. 8 00:00:21,320 --> 00:00:23,825 І життя буде вітер. 9 00:00:23,825 --> 00:00:26,510 10 00:00:26,510 --> 00:00:27,680 Так що не надто багато сьогодні. 11 00:00:27,680 --> 00:00:30,280 >> Сподіваюся, насправді вітер через порядок денний на сьогодні, 12 00:00:30,280 --> 00:00:33,400 і тоді звідси з якоюсь запас часу. 13 00:00:33,400 --> 00:00:36,210 Крім того, я хочу вибачитися через відсутність цукерки сьогодні. 14 00:00:36,210 --> 00:00:37,030 Я не знаю, чому. 15 00:00:37,030 --> 00:00:40,520 Але на цьому тижні, приводячи Хеллоуїн, я б забути цукерки. 16 00:00:40,520 --> 00:00:43,290 >> Так що я насправді просто величезний розчарування для вас прямо зараз. 17 00:00:43,290 --> 00:00:47,050 Тому що я пам'ятаю, в буквальному сенсі цукерки для кожного класу, але Хеллоуїна. 18 00:00:47,050 --> 00:00:49,345 Але наступного тижня, Я наведу подвоїти кількість цукерок 19 00:00:49,345 --> 00:00:50,720 щоб на що, все для вас. 20 00:00:50,720 --> 00:00:53,260 Це буде здорово. 21 00:00:53,260 --> 00:00:56,690 >> Так що я пару оголошень про яку планування. 22 00:00:56,690 --> 00:00:59,520 У мене є кілька питань планування. 23 00:00:59,520 --> 00:01:02,150 Тоді ми йдемо, щоб перейти на говорити про те, що називається CHMOD. 24 00:01:02,150 --> 00:01:05,980 Ми будемо говорити про швидко TCP / IP HTTP. 25 00:01:05,980 --> 00:01:09,770 >> І тоді ми будемо кодувати наші власний веб-сайт за допомогою HTML і CSS. 26 00:01:09,770 --> 00:01:13,030 І тоді я, можливо, насправді залишити як 20 хвилин, щоб поговорити про pset6. 27 00:01:13,030 --> 00:01:16,550 Тому що насправді pset6 багато речі, які ми вже бачили раніше, 28 00:01:16,550 --> 00:01:19,090 але я хотів, щоб оновити деякі з цих понять 29 00:01:19,090 --> 00:01:22,140 а також навчити пару нових функцій. 30 00:01:22,140 --> 00:01:23,110 >> Прохолодний. 31 00:01:23,110 --> 00:01:25,440 Тому в першу чергу, ласкаво просимо від розриву. 32 00:01:25,440 --> 00:01:27,410 Я сподіваюся, що ви перерву був приємним. 33 00:01:27,410 --> 00:01:29,695 Чи буде у вас для перерви? 34 00:01:29,695 --> 00:01:30,820 АУДИТОРІЯ: Пішов у Нью-Йорку. 35 00:01:30,820 --> 00:01:32,030 ANDI Пен: Ви пішли в Нью-Йорк? 36 00:01:32,030 --> 00:01:33,738 Я думаю, що половина нашої школи відправився в Нью-Йорку. 37 00:01:33,738 --> 00:01:34,740 Все добре. 38 00:01:34,740 --> 00:01:38,250 Я провів більшу частину моєї перерви сидячий спосіб життя в ліжку Netflixing. 39 00:01:38,250 --> 00:01:39,760 І це був гарний час. 40 00:01:39,760 --> 00:01:43,450 >> Але ми зараз назад, назад в сесія, назад в гойдалки речей. 41 00:01:43,450 --> 00:01:47,900 У нас є PSET належне в цю п'ятницю опівдні. 42 00:01:47,900 --> 00:01:50,240 >> Я думаю, ви вже взяв свій тест, так? 43 00:01:50,240 --> 00:01:52,140 Таким чином, кожен, хто має не було їх вікторини, 44 00:01:52,140 --> 00:01:55,416 будь ласка, приходьте і отримаєте вікторини від мене в кінці розділу. 45 00:01:55,416 --> 00:01:56,540 Або відслідковувати мене на кампусі. 46 00:01:56,540 --> 00:01:59,310 Я буду мати це зі мною куди-небудь. 47 00:01:59,310 --> 00:02:02,120 >> Наша остаточний проект попередньої пропозиції також. 48 00:02:02,120 --> 00:02:06,380 Так що для тих з нас, хто ніколи не вживав цей клас перш, замковий камінь CS50 49 00:02:06,380 --> 00:02:11,150 дуже багато завершилися в цьому Грандіозний проект, що студенти пропонують. 50 00:02:11,150 --> 00:02:14,300 І передпроектні пропозиції, тільки загальна ідея 51 00:02:14,300 --> 00:02:18,500 що одним можете зробити для їх Проект, ця ідея через понеділок, 52 00:02:18,500 --> 00:02:20,780 в наступний понеділок опівдні. 53 00:02:20,780 --> 00:02:23,800 >> Так досить багато, я думаю, що Девід буде більше говорити про це в лекції 54 00:02:23,800 --> 00:02:25,390 якщо він вже не має. 55 00:02:25,390 --> 00:02:28,710 І є тверде сторінка на нашому сайті, пояснюючи 56 00:02:28,710 --> 00:02:31,610 всі вимоги проекту. 57 00:02:31,610 --> 00:02:34,082 Але по суті, вибрати будь-яка тема, що у Вас є 58 00:02:34,082 --> 00:02:35,915 були зацікавлені в протягом усього часу тут 59 00:02:35,915 --> 00:02:41,760 в CS, будь то ігровий або дизайн або відео або що-небудь. 60 00:02:41,760 --> 00:02:44,920 >> І ви можете дійсно почасти Тепер застосувати деякі з уроків, 61 00:02:44,920 --> 00:02:52,470 що ми дізналися тут, в CS50-- привіт, welcome-- в значній мірі проведення 62 00:02:52,470 --> 00:02:56,320 остаточний проект за вашим вибором. 63 00:02:56,320 --> 00:02:59,570 Все, що через понеділок лише короткий реклама по електронній пошті 64 00:02:59,570 --> 00:03:02,010 для мене, швидко вирок, як, гей, Анді, 65 00:03:02,010 --> 00:03:06,490 Я дійсно зацікавлений у проектуванні гра, яка робить це для IOS. 66 00:03:06,490 --> 00:03:07,420 Прохолодний. 67 00:03:07,420 --> 00:03:10,767 Просто дайте мені ваш коротку початкову ідеї для ваших кінцевих проектів. 68 00:03:10,767 --> 00:03:13,850 І ми будемо говорити через чи ні це насправді хороша ідея чи ні, 69 00:03:13,850 --> 00:03:15,590 якщо це можливо ідея чи ні. 70 00:03:15,590 --> 00:03:20,760 Але лише передпроектні пропозиції через наступний понеділок. 71 00:03:20,760 --> 00:03:24,190 pset6, наші милі web--, що це неправильно. 72 00:03:24,190 --> 00:03:25,060 Pset7? 73 00:03:25,060 --> 00:03:25,560 pset6? 74 00:03:25,560 --> 00:03:26,680 Це pset6, вірно? 75 00:03:26,680 --> 00:03:32,690 >> pset6, наш веб-сервер, через У п'ятницю опівдні з кінця дня. 76 00:03:32,690 --> 00:03:37,660 Годинники резюме звичайно з понеділка в четвер з 8:00 до 11:00 на цьому тижні. 77 00:03:37,660 --> 00:03:39,710 Я думаю, що для громад Наступні три ночі. 78 00:03:39,710 --> 00:03:40,310 Прохолодний. 79 00:03:40,310 --> 00:03:44,260 Перш, ніж ми мали в матеріал, хто-небудь є які-небудь питання, жарти, розповіді? 80 00:03:44,260 --> 00:03:46,662 Що ти зробив для падіння перерви? 81 00:03:46,662 --> 00:03:48,640 >> АУДИТОРІЯ: Що мені робити? 82 00:03:48,640 --> 00:03:52,834 >> ANDI Пен: Вже це давним-давно насправді. 83 00:03:52,834 --> 00:03:54,000 Christabel відправився в Нью-Йорку. 84 00:03:54,000 --> 00:03:55,614 Я залишився тут і Netflixed. 85 00:03:55,614 --> 00:03:56,864 АУДИТОРІЯ: О, так, я був тут. 86 00:03:56,864 --> 00:03:57,614 ANDI Пен: О, добре. 87 00:03:57,614 --> 00:03:59,792 АУДИТОРІЯ: Я не пам'ятаю що конкретно. 88 00:03:59,792 --> 00:04:00,710 ANDI Пен: Це нормально. 89 00:04:00,710 --> 00:04:01,960 АУДИТОРІЯ: Netflixing напевно. 90 00:04:01,960 --> 00:04:02,990 ANDI Пен: Netflixing. 91 00:04:02,990 --> 00:04:04,710 Так, це добре провести час. 92 00:04:04,710 --> 00:04:05,780 ДОБРЕ. 93 00:04:05,780 --> 00:04:06,340 Добре. 94 00:04:06,340 --> 00:04:08,877 Будь-які питання перед ми стрибаємо в матеріал? 95 00:04:08,877 --> 00:04:11,210 Крім того, ми збираємося, щоб спробувати швидкість через розділ сьогодні, 96 00:04:11,210 --> 00:04:12,504 не надто багато, щоб покрити. 97 00:04:12,504 --> 00:04:14,420 І, сподіваюся, ми отримаємо тут небагато рано. 98 00:04:14,420 --> 00:04:15,580 Вибачте через не цукерки, а також. 99 00:04:15,580 --> 00:04:20,310 Я розчарував особливо під час Хеллоуїна. 100 00:04:20,310 --> 00:04:21,110 >> Добре. 101 00:04:21,110 --> 00:04:21,810 Прохолодний. 102 00:04:21,810 --> 00:04:28,370 Отже, ми збираємося, щоб почати говорити про аргумент командного рядка називається CHMOD. 103 00:04:28,370 --> 00:04:32,850 CHMOD, все це просто система Unix виклику проводиться з командного рядка 104 00:04:32,850 --> 00:04:34,700 змінити права доступу до файлів. 105 00:04:34,700 --> 00:04:37,790 Так, наприклад, ми в Всі стикалися сторінку 106 00:04:37,790 --> 00:04:40,550 як це, ймовірно, колись у наша тривалість життя бути інтернет- 107 00:04:40,550 --> 00:04:45,110 Користувач, де наш веб-сервер має дав нам помилку заборонено. 108 00:04:45,110 --> 00:04:49,086 Ви не мають дозволу на доступ, бла, бла, бла, на цьому сервері. 109 00:04:49,086 --> 00:04:50,960 Все, що насправді означає є те, що права доступу 110 00:04:50,960 --> 00:04:53,920 що були прикріплені до того, що Сторінка, яку ви намагаєтеся отримати доступ, 111 00:04:53,920 --> 00:04:55,840 не були відкриті для вас. 112 00:04:55,840 --> 00:04:57,870 Так досить багато, CHMOD це шлях, в якому 113 00:04:57,870 --> 00:05:02,140 ми можемо змінити ці дозволи системи дати кожному користувачеві, група, 114 00:05:02,140 --> 00:05:04,975 чи світ, чи будь Поєднання цих доступу 115 00:05:04,975 --> 00:05:07,900 в деяких файлах каталоги, нічого насправді, 116 00:05:07,900 --> 00:05:11,720 будь-який вид системи на операційна система. 117 00:05:11,720 --> 00:05:14,039 Так що, якщо який-небудь з хлопців є комп'ютери, якщо ви відчуваєте, 118 00:05:14,039 --> 00:05:17,080 як після разом зі мною сьогодні, повністю не соромтеся просто введіть речі 119 00:05:17,080 --> 00:05:17,580 дюйм 120 00:05:17,580 --> 00:05:19,790 Якщо ні, то ви можете просто бовтатися. 121 00:05:19,790 --> 00:05:23,170 Так що я збираюся насправді тягнути до мого терміналу прямо зараз. 122 00:05:23,170 --> 00:05:29,810 123 00:05:29,810 --> 00:05:32,310 >> Таким чином, команда для запуску CHMOD, або принаймні просто 124 00:05:32,310 --> 00:05:37,840 перерахувати дозволу вашого Каталог файлів, просто LS-л. 125 00:05:37,840 --> 00:05:42,270 Як ви можете бачити, купа матеріал спливає, більшість з яких 126 00:05:42,270 --> 00:05:45,390 Важливо до нас на ліва сторона тут. 127 00:05:45,390 --> 00:05:48,710 Ви, хлопці, побачите купу RS, WS, 1 /. 128 00:05:48,710 --> 00:05:49,210 Так. 129 00:05:49,210 --> 00:05:51,400 >> Ті, по суті, тільки всі права доступу до файлів 130 00:05:51,400 --> 00:05:55,960 пояснити, що деякі каталоги і файли у вашій системі є. 131 00:05:55,960 --> 00:05:58,150 Отже, давайте повернемося до потужність Справа тут. 132 00:05:58,150 --> 00:06:02,450 133 00:06:02,450 --> 00:06:06,500 Таким чином, на додаток до імен файлів як ви, хлопці, можете побачити на правій, 134 00:06:06,500 --> 00:06:10,312 ми хочемо, щоб побачити суті просто колонка зліва. 135 00:06:10,312 --> 00:06:12,020 Таким чином, на додаток до просто імена файлів, ми 136 00:06:12,020 --> 00:06:16,240 можна побачити дозволу файлів, їх Власник групи, назва групи, дата 137 00:06:16,240 --> 00:06:18,460 що минулого файл був змінені, і так далі. 138 00:06:18,460 --> 00:06:20,640 Ви можете побачити багато речей, використовуючи CHMOD. 139 00:06:20,640 --> 00:06:26,037 Таким чином, шлях, який ми читаємо, що CHMOD перша буква ми значною мірою ігнорувати 140 00:06:26,037 --> 00:06:27,370 в термінах дозволів для читання. 141 00:06:27,370 --> 00:06:31,460 >> Перша буква просто говорить нам, що тип системи ми доступі. 142 00:06:31,460 --> 00:06:34,240 д, в даному випадку, є Папка або каталог. 143 00:06:34,240 --> 00:06:38,430 Отже, ми знаємо, що в даний час свою робочу розділ сьомій є каталогом. 144 00:06:38,430 --> 00:06:41,530 І тоді ви побачите трьох тріади, по суті, тільки 145 00:06:41,530 --> 00:06:43,490 три комплекти з трьох символів. 146 00:06:43,490 --> 00:06:45,680 І ви можете думати один про як небагато. 147 00:06:45,680 --> 00:06:49,260 >> Таким чином, ви просто є три набори три біти, дев'ять бітів в загальній складності. 148 00:06:49,260 --> 00:06:51,420 Ти звертаєшся їх у групи по три. 149 00:06:51,420 --> 00:06:56,230 Таким чином, перша група з трьох є завжди ваші права користувача. 150 00:06:56,230 --> 00:07:00,557 >> Ваш другий групи з трьох є завжди ваші права доступу для групи. 151 00:07:00,557 --> 00:07:02,765 І ваш третій набір з трьох завжди, як світ, 152 00:07:02,765 --> 00:07:04,380 усюди дозволу. 153 00:07:04,380 --> 00:07:06,320 Так що я думаю просто задати питання, що 154 00:07:06,320 --> 00:07:08,051 різниця між користувачем і групою. 155 00:07:08,051 --> 00:07:09,800 Основна відмінність між користувачем і групою 156 00:07:09,800 --> 00:07:13,180 є те, що користувач просто особисто доступу все це прямо зараз. 157 00:07:13,180 --> 00:07:18,070 Група може бути, якщо у вас є кілька користувачі на одному комп'ютері, наприклад. 158 00:07:18,070 --> 00:07:20,280 Всі вони можуть розглядатися як групи. 159 00:07:20,280 --> 00:07:23,220 >> І тоді світ тільки світ, все. 160 00:07:23,220 --> 00:07:31,010 Отже, ми бачимо надалі, як ми можемо змінити ті в різних дозволах. 161 00:07:31,010 --> 00:07:33,080 Так досить багато, ми збирається раніше зосереджені 162 00:07:33,080 --> 00:07:38,450 на частині зліва, де для каталогів CS50 ми бачимо drwx, 163 00:07:38,450 --> 00:07:40,970 де R означає лише те, що це читається. 164 00:07:40,970 --> 00:07:42,620 >> Ш просто означає, що це записи. 165 00:07:42,620 --> 00:07:45,470 А потім просто х означає, що це виконуваний. 166 00:07:45,470 --> 00:07:47,220 Можна подумати, що це свого роду з не має сенсу. 167 00:07:47,220 --> 00:07:47,993 Вона повинна бути електронної. 168 00:07:47,993 --> 00:07:50,150 Але насправді х вид працює трохи краще, 169 00:07:50,150 --> 00:07:51,690 тому що ви можете згадати його краще. 170 00:07:51,690 --> 00:07:56,406 >> Таким чином, три типи речей, які ви може зробити, ви можете прочитати файл, 171 00:07:56,406 --> 00:07:59,280 ви можете мати дозвіл, щоб написати подати, або ви могли б мати дозвіл 172 00:07:59,280 --> 00:08:00,780 запустити файл. 173 00:08:00,780 --> 00:08:04,580 І так як ми насправді, що представляють тих, в бітах 174 00:08:04,580 --> 00:08:06,940 це число 4, 2, 1 і. 175 00:08:06,940 --> 00:08:12,870 Тому все, що це читається це представлені на число 4. 176 00:08:12,870 --> 00:08:15,150 >> Все це записи представлена ​​2. 177 00:08:15,150 --> 00:08:18,880 І нічого, що це виконуваний як представлено 1. 178 00:08:18,880 --> 00:08:22,860 Так що в цьому сенсі, ми можемо також представляють ці numbers-- 179 00:08:22,860 --> 00:08:25,281 привіт, ласкаво просимо, в іншому. 180 00:08:25,281 --> 00:08:25,780 Вибачте. 181 00:08:25,780 --> 00:08:28,510 Перед усім, я збираюся вибачитися від імені всіх 182 00:08:28,510 --> 00:08:29,468 введення клас в даний час. 183 00:08:29,468 --> 00:08:30,810 Я забув цукерки сьогодні. 184 00:08:30,810 --> 00:08:33,640 Мені шкода, що я невдаха На цьому тижні Хеллоуїна. 185 00:08:33,640 --> 00:08:37,070 Я наведу два рази більше цукерки в наступний раз, щоб зробити для нього. 186 00:08:37,070 --> 00:08:42,360 Але в кожному разі, вибачте про те, що хлопці, вибачте. 187 00:08:42,360 --> 00:08:46,640 >> Таким чином, шлях, який ми можемо насправді вхід на нашої команди аргумент ми 188 00:08:46,640 --> 00:08:51,760 можна зробити дозволу групи слеш CHMOD, де група тільки що б то ні 189 00:08:51,760 --> 00:08:54,130 Група ми намагаємося змінити. 190 00:08:54,130 --> 00:08:56,600 І права доступу що ми хочемо додати до нього. 191 00:08:56,600 --> 00:08:58,860 Так, наприклад, плюс додає дозволу, 192 00:08:58,860 --> 00:09:01,590 і відняти забирає права. 193 00:09:01,590 --> 00:09:07,060 >> І види групи у нас є A для всіх, і, для користувачів, г для груп, 194 00:09:07,060 --> 00:09:09,050 або про інших. 195 00:09:09,050 --> 00:09:10,300 Це трохи абстрактний прямо зараз. 196 00:09:10,300 --> 00:09:13,550 Але ми підемо за пару прикладів просто щоб продемонструвати це дуже швидко. 197 00:09:13,550 --> 00:09:16,960 Все добре на цьому слайд, так що я можу рухатися далі? 198 00:09:16,960 --> 00:09:18,280 Прохолодний. 199 00:09:18,280 --> 00:09:21,290 >> Так, наприклад, RWX. 200 00:09:21,290 --> 00:09:26,720 Перш ніж ми поговоримо про те, що вона являє собою, в першу чергу, що ж RWX на увазі? 201 00:09:26,720 --> 00:09:31,450 Якщо ви бачите, що це напевно файл має дозволу RWX, 202 00:09:31,450 --> 00:09:34,270 що ж, що означає, що людина може бути в змозі зробити? 203 00:09:34,270 --> 00:09:35,740 >> АУДИТОРІЯ: читання, запис і виконання. 204 00:09:35,740 --> 00:09:36,420 >> ANDI Пен: Так, саме так. 205 00:09:36,420 --> 00:09:37,840 Ви можете прочитати запис і виконання. 206 00:09:37,840 --> 00:09:40,790 Тому що всі три з них персонажі присутні. 207 00:09:40,790 --> 00:09:44,370 Так що, якщо ми йдемо вперед і говорити про це в термінах бітів, 208 00:09:44,370 --> 00:09:48,490 RWX також може бути представлений у вигляді 700. 209 00:09:48,490 --> 00:09:53,370 Тому що, як ви можете бачити в будь Сортувати дозволу файлової директорії, 210 00:09:53,370 --> 00:09:54,320 є три тріади. 211 00:09:54,320 --> 00:09:58,060 >> У цьому випадку, тільки перший Тріада-небудь там. 212 00:09:58,060 --> 00:10:04,050 Таким чином, в цьому випадку, т = 4, ш = 2, і х дорівнює 1. 213 00:10:04,050 --> 00:10:05,860 Якщо ви додаєте їх разом, це 7. 214 00:10:05,860 --> 00:10:08,730 >> І тому, якщо вам конвертувати це двійковий, це 700. 215 00:10:08,730 --> 00:10:10,310 З 7 є першим тріади. 216 00:10:10,310 --> 00:10:12,760 0, немає нічого присутній у другій тріади. 217 00:10:12,760 --> 00:10:15,850 І тоді нічого не присутня в третій тріади, так що це ще 0. 218 00:10:15,850 --> 00:10:22,520 >> Таким чином, в цьому ж сенсі купа тріад може бути представлена ​​тільки в бітах, так 219 00:10:22,520 --> 00:10:23,600 в двійковому, а також. 220 00:10:23,600 --> 00:10:29,920 Так 700 означає ту ж саму річ, як RWX ------ погляду дозволів. 221 00:10:29,920 --> 00:10:32,590 Все ясно, на що? 222 00:10:32,590 --> 00:10:33,090 Прохолодний. 223 00:10:33,090 --> 00:10:40,290 І так CHMOD 111 дасть які права до файлу? 224 00:10:40,290 --> 00:10:42,600 Дай вам, хлопці, пару секунд, щоб перетворити це. 225 00:10:42,600 --> 00:10:51,140 226 00:10:51,140 --> 00:10:53,250 Пам'ятайте, перший тріада для користувача. 227 00:10:53,250 --> 00:10:56,320 Другий тріада в групі. 228 00:10:56,320 --> 00:10:59,450 І третій тріада для всіх. 229 00:10:59,450 --> 00:11:03,680 >> І так CHMOD 111, який дасть тип дозволів і для кого? 230 00:11:03,680 --> 00:11:06,520 231 00:11:06,520 --> 00:11:09,020 Візьміть пару секунд думаю про це і повернутися назад. 232 00:11:09,020 --> 00:11:19,790 233 00:11:19,790 --> 00:11:20,910 Так. 234 00:11:20,910 --> 00:11:22,920 >> АУДИТОРІЯ: Так кожен може виконати його. 235 00:11:22,920 --> 00:11:23,920 ANDI Пен: Так, саме так. 236 00:11:23,920 --> 00:11:25,544 АУДИТОРІЯ: Але ніхто не може читати або писати. 237 00:11:25,544 --> 00:11:27,910 ANDI Пен: І не соромтеся щоб пояснити всім, 238 00:11:27,910 --> 00:11:29,860 як ви прийшли до такого висновку. 239 00:11:29,860 --> 00:11:34,290 >> АУДИТОРІЯ: Ну, для користувача, Група, і в світі, це все 1, 240 00:11:34,290 --> 00:11:35,700 який є код виконуваного файлу. 241 00:11:35,700 --> 00:11:37,070 >> ANDI Пен: Так, саме так. 242 00:11:37,070 --> 00:11:42,320 Так 1, в цьому випадку, всі ми знаємо, що це виконуваний код. 243 00:11:42,320 --> 00:11:45,280 Адже читання 4. 244 00:11:45,280 --> 00:11:45,990 Лист 2. 245 00:11:45,990 --> 00:11:47,230 І виконуваний 1. 246 00:11:47,230 --> 00:11:51,580 Так всі три тріади 1, що означає, що в світі, для користувача, 247 00:11:51,580 --> 00:11:54,680 і в групі, вони всі виконувані. 248 00:11:54,680 --> 00:11:56,170 >> Все добре з цим? 249 00:11:56,170 --> 00:11:56,940 ДОБРЕ. 250 00:11:56,940 --> 00:11:59,180 І тому другий спосіб що ми можемо насправді 251 00:11:59,180 --> 00:12:01,220 написати це теж ви може просто зробити CHMOD 252 00:12:01,220 --> 00:12:05,050 плюс х. кошти все або всіх. 253 00:12:05,050 --> 00:12:07,060 Плюс означає відмову дозволу на. 254 00:12:07,060 --> 00:12:09,112 І тоді х означає виконуваний. 255 00:12:09,112 --> 00:12:11,070 Так що дві команди фактично ідентичні. 256 00:12:11,070 --> 00:12:12,903 Так що, якщо ви хочете запустити це в терміналі, 257 00:12:12,903 --> 00:12:15,830 ви CHMOD 111, ім'я Ваш каталог або файл. 258 00:12:15,830 --> 00:12:18,520 Або ви можете зробити CHMOD плюс х, Ім'я Вашого файлу каталогу. 259 00:12:18,520 --> 00:12:22,150 Те ж саме, тільки більш простий спосіб, можливо, для деяких представляють або зміни 260 00:12:22,150 --> 00:12:24,280 права доступу до файлів. 261 00:12:24,280 --> 00:12:28,806 >> Кожен порядку з CHMOD перш ніж ми перейдемо? 262 00:12:28,806 --> 00:12:31,700 Прохолодний. 263 00:12:31,700 --> 00:12:35,336 Так що тепер ми збираємося, щоб очолити в Кілька гірок дуже абстрактних понять 264 00:12:35,336 --> 00:12:37,210 що я досить багато збирається вітер через. 265 00:12:37,210 --> 00:12:39,530 І це абсолютно нормально, якщо ви не всі розуміють. 266 00:12:39,530 --> 00:12:42,330 >> Навіть зараз, я все ще справді не всі розуміють повністю. 267 00:12:42,330 --> 00:12:44,640 Але це більше про отримання розуміння верхнього рівня 268 00:12:44,640 --> 00:12:47,280 про те, як деякі з цих речей працюють. 269 00:12:47,280 --> 00:12:50,490 Таким чином, ми будемо говорити швидко про TCP / IP, 270 00:12:50,490 --> 00:12:54,880 який знаходиться всього управління коробкою передач Протокол скоротити Internet Protocol. 271 00:12:54,880 --> 00:12:57,135 >> Нагадаємо, з лекції, Девід, він навчить вас 272 00:12:57,135 --> 00:13:00,700 приклад, де він проходить ноти в конверті 273 00:13:00,700 --> 00:13:02,790 до як вершина лекційному залі? 274 00:13:02,790 --> 00:13:06,990 Таким чином, в юридичній школі залі Девід продемонстрував істотно 275 00:13:06,990 --> 00:13:10,370 як TCP / IP працює в почуття, що все це 276 00:13:10,370 --> 00:13:14,300 це є засобом забезпечення, що дані був доставлений по серверу 277 00:13:14,300 --> 00:13:15,870 або в Інтернеті. 278 00:13:15,870 --> 00:13:22,270 Таким чином, у прикладі конверта і повідомлення, користувач наприкінці 279 00:13:22,270 --> 00:13:26,410 було видно, що, ну, мені потрібно, щоб отримав чотири пакети інформації. 280 00:13:26,410 --> 00:13:28,096 >> Але я насправді отримав тільки три. 281 00:13:28,096 --> 00:13:29,470 Це означає, що я повинен бути відсутній один. 282 00:13:29,470 --> 00:13:30,760 І не було доставлено. 283 00:13:30,760 --> 00:13:33,990 І так TCP / IP в Інтернеті, за допомогою комп'ютера і сервера, 284 00:13:33,990 --> 00:13:35,500 робить ту ж саму річ. 285 00:13:35,500 --> 00:13:38,900 Все це робить вказати рамки, в яких загиблий дані 286 00:13:38,900 --> 00:13:41,100 пакети можуть бути обурені і отримав. 287 00:13:41,100 --> 00:13:44,760 >> Як в Інтернеті, коли ви намагаєтеся доступ до файлів на сайті або відправити файли 288 00:13:44,760 --> 00:13:48,210 Вашому другу або подивитися на веб браузери, тисячі і тисячі 289 00:13:48,210 --> 00:13:50,440 з мільярдів і мільярдів байтів інформації 290 00:13:50,440 --> 00:13:52,840 передаються в мілісекунду. 291 00:13:52,840 --> 00:13:54,560 І це дійсно, дійсно заплутаною. 292 00:13:54,560 --> 00:13:57,110 І це дійсно важко насправді знаємо, що було відправлено 293 00:13:57,110 --> 00:13:58,270 і що не було надіслано. 294 00:13:58,270 --> 00:14:02,210 >> І так TCP / IP просто вказує згуртованою рамки 295 00:14:02,210 --> 00:14:04,115 в якому ваш веб- браузера і сервера 296 00:14:04,115 --> 00:14:05,990 може спілкуватися вид один з одним, так само, 297 00:14:05,990 --> 00:14:08,550 переконайтеся, що пакети все тут і нічого втратили 298 00:14:08,550 --> 00:14:12,700 і всі дані, які ви запитані фактично відображається неправильно. 299 00:14:12,700 --> 00:14:16,350 Все ОК, що дуже просто Короткий високий рівень розумієте? 300 00:14:16,350 --> 00:14:18,510 Прохолодний. 301 00:14:18,510 --> 00:14:21,550 >> Отже, ми збираємося, щоб перемістити в розмову про HTTP, який 302 00:14:21,550 --> 00:14:24,610 просто протокол передачі гіпертексту. 303 00:14:24,610 --> 00:14:32,550 HTTP, все це є те, що будь-яка сторінка або файл доступний на веб-сайті, 304 00:14:32,550 --> 00:14:35,810 сервер повертає HTTP Код стану у відповідь 305 00:14:35,810 --> 00:14:39,869 з проханням переконавшись, що небудь, о, цей запит пройшов. 306 00:14:39,869 --> 00:14:41,410 І все в правильному відображенні. 307 00:14:41,410 --> 00:14:43,500 Або, о, ні, 404. 308 00:14:43,500 --> 00:14:44,730 Щось пішло не так. 309 00:14:44,730 --> 00:14:45,940 О, я не можу показати. 310 00:14:45,940 --> 00:14:50,370 >> Все це в тому, що все, що Ви намагаєтеся отримати доступ, 311 00:14:50,370 --> 00:14:55,160 використовувати в якості користувача намагається отримати доступ до, на internet-- тільки переконавшись, 312 00:14:55,160 --> 00:15:00,080 що ви або успішно Доступ все, що було чи не 313 00:15:00,080 --> 00:15:02,080 успішно зверталися б то не було. 314 00:15:02,080 --> 00:15:05,120 І тому статус HTTP код просто дає вам 315 00:15:05,120 --> 00:15:09,910 засіб в змозі знати, або він не був успішним чи ні. 316 00:15:09,910 --> 00:15:13,440 Так, наприклад, приклад запиту на. 317 00:15:13,440 --> 00:15:16,050 >> Ви можете подивитися тут це зазвичай, як правило, чотири рядки. 318 00:15:16,050 --> 00:15:22,530 У нас є GET HTTP 1.1, який знаходиться всього URL-адреса запиту метод, протокол 319 00:15:22,530 --> 00:15:24,490 версія, ім'я поля, і значення поля. 320 00:15:24,490 --> 00:15:26,810 Так що не потрібно повністю запам'ятати що-небудь тут. 321 00:15:26,810 --> 00:15:29,960 Просто вид ознайомитися самостійно з тим, як вони виглядають. 322 00:15:29,960 --> 00:15:34,060 >> У цьому прикладі запит метод Посилання на це просто те, що запит 323 00:15:34,060 --> 00:15:35,620 ви відправляєте на сервер. 324 00:15:35,620 --> 00:15:40,710 Як, гей, сервер, я дійсно хочу Доступ бла, бла, бла, HTTP сторінка. 325 00:15:40,710 --> 00:15:43,785 Версія протоколу тільки що б то ні Версія хост або сервер 326 00:15:43,785 --> 00:15:45,490 використовує для доступу до інформації. 327 00:15:45,490 --> 00:15:49,510 >> Ім'я поля є веб-сайт або Посилання, що ви намагаєтеся отримати доступ, 328 00:15:49,510 --> 00:15:52,610 в цьому випадку, www.apple.com. 329 00:15:52,610 --> 00:15:56,110 І значення поля просто, як правило, ім'я, значення. 330 00:15:56,110 --> 00:15:59,540 І це може бути будь-якої комбінації букв або цифр або що завгодно. 331 00:15:59,540 --> 00:16:02,890 >> Таким чином, типовий запит, так що те, що насправді комп'ютер 332 00:16:02,890 --> 00:16:08,400 посилає на сервер, який говорить, гей, Ви знаєте, що мені це потрібно відображатися, 333 00:16:08,400 --> 00:16:13,000 це вид запиту що вони фактично отримують. 334 00:16:13,000 --> 00:16:16,760 Приклад відповіді від того, що сервер буде відправляти назад до вас 335 00:16:16,760 --> 00:16:20,320 буде в значній мірі те ж саме, за винятком коду стану у верхній. 336 00:16:20,320 --> 00:16:24,550 Так 200, 2 0 0 завжди код стану для ОК. 337 00:16:24,550 --> 00:16:26,050 Мовляв, добре, цей запит пройшов. 338 00:16:26,050 --> 00:16:27,980 Ви були в змозі отримати доступ все правильно. 339 00:16:27,980 --> 00:16:28,810 Життя чудове. 340 00:16:28,810 --> 00:16:29,990 Життя прекрасне. 341 00:16:29,990 --> 00:16:32,150 Все абсолютно добре. 342 00:16:32,150 --> 00:16:36,050 >> І так це просто говорить ваш браузер і ваш сервер, гей, добре все в. 343 00:16:36,050 --> 00:16:37,470 Я отримав всю інформацію, мені потрібно. 344 00:16:37,470 --> 00:16:39,160 Прохолодний. 345 00:16:39,160 --> 00:16:41,790 Але проблема в тому Іноді проблеми придумати 346 00:16:41,790 --> 00:16:46,850 коли ви останній have-- Я думаю, Я говорив про дублікатів. 347 00:16:46,850 --> 00:16:48,870 Ви повинні менше хороші відгуки. 348 00:16:48,870 --> 00:16:52,660 >> Так, наприклад, 404 це сторінка не знайдена. 349 00:16:52,660 --> 00:16:54,897 Ви іноді мають доступ Заборонене. 350 00:16:54,897 --> 00:16:56,730 У вас є різні інші Коди стану, що я 351 00:16:56,730 --> 00:16:59,688 що ви всі бачили, коли ви намагається зробити дослідження в Інтернеті. 352 00:16:59,688 --> 00:17:02,300 І ваш браузер дає вам , Ні, не може отримати доступ. 353 00:17:02,300 --> 00:17:04,190 А ти як, ну, лайно. 354 00:17:04,190 --> 00:17:09,260 >> Так що досить багато, є деякі досить поширені коди статусу. 355 00:17:09,260 --> 00:17:14,109 Може бути, ознайомитися з якою ті, ті. 356 00:17:14,109 --> 00:17:16,000 Найсмішніше, що одним Я думаю, що коли-небудь чув 357 00:17:16,000 --> 00:17:18,040 of-- якщо вам трапиться подивитися всі з них 358 00:17:18,040 --> 00:17:21,490 онлайн, чому є насправді реальна код стану 359 00:17:21,490 --> 00:17:26,619 називається 418 я чайник. 360 00:17:26,619 --> 00:17:29,610 >> Я гуглі, де Походження цього був. 361 00:17:29,610 --> 00:17:33,150 І, мабуть, один першоквітневий " День пару десятиліть тому, 362 00:17:33,150 --> 00:17:36,415 хто думав, що це було б весело щоб створити новий код стану під назвою 418 363 00:17:36,415 --> 00:17:37,380 Я чайник. 364 00:17:37,380 --> 00:17:40,760 Законно, назва це код називається я чайник. 365 00:17:40,760 --> 00:17:43,670 >> Я забув, що сторінка, яку ви повинні перейти насправді зробити це дисплей. 366 00:17:43,670 --> 00:17:47,955 Але, мабуть, ви можете насправді отримати код статусу Я 367 00:17:47,955 --> 00:17:51,400 чайник-то через щось робити. 368 00:17:51,400 --> 00:17:54,480 Так що сотні і сотні кодів стану. 369 00:17:54,480 --> 00:17:56,730 >> Деякі з них роблять більш сенс, ніж інші. 370 00:17:56,730 --> 00:18:01,430 Але в значній мірі тільки ознайомитися самостійно з найпоширеніших. 371 00:18:01,430 --> 00:18:04,090 Запитувана тіло суб'єкт короткий і товстий, мабуть. 372 00:18:04,090 --> 00:18:07,990 >> Так що іноді Є більш лякають помилок, ніж я чайник. 373 00:18:07,990 --> 00:18:11,210 Але це той, який я думаю, ви начебто сподіваюся потрапити. 374 00:18:11,210 --> 00:18:14,130 Але я не думаю, що ви будете. 375 00:18:14,130 --> 00:18:17,260 Все добре тільки на статус коди, запити, процеси, виготовлення 376 00:18:17,260 --> 00:18:19,155 впевнений, що інформація надходить правильно? 377 00:18:19,155 --> 00:18:22,270 378 00:18:22,270 --> 00:18:26,120 >> Так що тепер ми збираємося переходу в забавній частини секції сьогодні, 379 00:18:26,120 --> 00:18:28,500 де ми трохи поговоримо про HTML. 380 00:18:28,500 --> 00:18:32,580 HTML, все це гіпертексту Мова розмітки. 381 00:18:32,580 --> 00:18:35,160 Це просто стандартна мова можна використовувати для створення всіх веб 382 00:18:35,160 --> 00:18:36,690 сторінки в Інтернеті. 383 00:18:36,690 --> 00:18:39,560 >> Таким чином, будь-який веб-сторінки, що Ваш улюблений веб-сторінки? 384 00:18:39,560 --> 00:18:40,855 Який ваш улюблений веб-сторінки? 385 00:18:40,855 --> 00:18:41,771 >> АУДИТОРІЯ: [нерозбірливо]. 386 00:18:41,771 --> 00:18:42,270 387 00:18:42,270 --> 00:18:43,090 ANDI Пен: На ​​жаль? 388 00:18:43,090 --> 00:18:43,980 >> АУДИТОРІЯ: Tumblr. 389 00:18:43,980 --> 00:18:44,730 >> ANDI Пен: Tumblr. 390 00:18:44,730 --> 00:18:46,800 Так Tumblr написано в HTML. 391 00:18:46,800 --> 00:18:50,700 І тому ми насправді йти до кінця і пограти з деякими з цих речей 392 00:18:50,700 --> 00:18:51,980 в подальшому. 393 00:18:51,980 --> 00:18:54,980 Практично всі вам потрібно вчитися, знаєте, 394 00:18:54,980 --> 00:18:58,540 написати HTML ви можете, ймовірно, Просто Google в Інтернеті. 395 00:18:58,540 --> 00:19:04,490 >> HTML, це не програма, як C де ви можете створювати змінні і робити 396 00:19:04,490 --> 00:19:05,600 класні речі з ним. 397 00:19:05,600 --> 00:19:08,747 Це найбільше, про, це, як я хочуть, щоб з'явитися на моєму сайті. 398 00:19:08,747 --> 00:19:10,080 І я просто хочу, щоб покласти його в. 399 00:19:10,080 --> 00:19:12,160 І це буде стиль його. 400 00:19:12,160 --> 00:19:15,650 >> Так HTML, в певному сенсі, це просто, як форматування або шаблон мову. 401 00:19:15,650 --> 00:19:16,680 Це набагато простіше. 402 00:19:16,680 --> 00:19:19,030 Це набагато простіше, щоб дізнатися, набагато легше писати в 403 00:19:19,030 --> 00:19:21,450 ніж ваш типовий програмування мову, дуже легко, 404 00:19:21,450 --> 00:19:24,310 дуже доступний користувачеві і доброзичливі. 405 00:19:24,310 --> 00:19:29,040 >> Таким чином, ми насправді відбувається, щоб грати навколо, написати свої сторінки сьогодні. 406 00:19:29,040 --> 00:19:32,900 Але перш, ніж ми почнемо, я просто хочу, щоб перейти короткі кращі практики. 407 00:19:32,900 --> 00:19:35,660 Оскільки HTML є такий простий мову й тому, що навіть 408 00:19:35,660 --> 00:19:39,012 якщо ви пару речей неправильно, іноді може не помітити, 409 00:19:39,012 --> 00:19:41,970 ми хочемо, щоб переконатися, що ми насправді дотримуючись наших кращих практик 410 00:19:41,970 --> 00:19:44,490 щоб переконатися, що речі, які може йти навколо, але 411 00:19:44,490 --> 00:19:49,660 не завжди буде йти прямо, не переконайтеся, що вони зведені до мінімуму. 412 00:19:49,660 --> 00:19:53,570 >> Так досить багато, переконайтеся, що Ваші закриття всі теги 413 00:19:53,570 --> 00:19:54,737 коли ви пишете в HTML. 414 00:19:54,737 --> 00:19:56,486 Якщо ви відкриваєте Тіло, переконайтеся, що ви 415 00:19:56,486 --> 00:19:58,015 закриття його тіла десь. 416 00:19:58,015 --> 00:20:00,720 Ви хочете, щоб переконатися, що ваш веб-сторінки перевіряє за допомогою 417 00:20:00,720 --> 00:20:02,070 те, що називається W3 валідатор. 418 00:20:02,070 --> 00:20:05,460 Ви можете просто Google, що в Інтернеті, і є посилання на нього. 419 00:20:05,460 --> 00:20:07,820 >> І тоді ви хочете, щоб окремий HTML-, що 420 00:20:07,820 --> 00:20:13,060 Ваш мова розмітки від вашого стилю, яка є мовою CSS, що Давид 421 00:20:13,060 --> 00:20:17,510 показали, що ми також буде грати трохи з лекцією. 422 00:20:17,510 --> 00:20:19,120 Прохолодний. 423 00:20:19,120 --> 00:20:23,500 Так в будь-який час ви хочете запустити HTML на CS50 приладу, 424 00:20:23,500 --> 00:20:26,240 ми збираємося запустити Програма називається Apache, 425 00:20:26,240 --> 00:20:29,810 які все це просто вбудований веб-сервер, що все в CS50 426 00:20:29,810 --> 00:20:31,410 має доступ до. 427 00:20:31,410 --> 00:20:35,700 Ми називаємо це apache50 тільки тому, що ми подобається називати всі 50 в CS50. 428 00:20:35,700 --> 00:20:39,610 >> Таким чином, шлях, який ви починаєте CS50 Інтернет сервер, ввівши на вашій команді 429 00:20:39,610 --> 00:20:42,860 Лінія apache50 почати точку. 430 00:20:42,860 --> 00:20:46,665 І якщо ви хочете, щоб закінчити його в будь-якому Час, ви цього не зробите apache50 кінець не крапка. 431 00:20:46,665 --> 00:20:47,910 І ви просто натисніть Enter. 432 00:20:47,910 --> 00:20:50,810 І це має бути заголовок тут найближчим часом. 433 00:20:50,810 --> 00:20:53,630 434 00:20:53,630 --> 00:20:54,130 Так. 435 00:20:54,130 --> 00:20:58,110 Так що я просто хочу, щоб швидко перейти приклад дійсно короткого веб-сторінки. 436 00:20:58,110 --> 00:21:00,280 І ми збираємося провести як 10, 15 хвилин грати 437 00:21:00,280 --> 00:21:04,008 навколо написання власних веб-сторінок. 438 00:21:04,008 --> 00:21:05,320 ДОБРЕ. 439 00:21:05,320 --> 00:21:07,841 Так от в IDE-- може все бачити, що? 440 00:21:07,841 --> 00:21:08,340 Не зовсім. 441 00:21:08,340 --> 00:21:11,400 Ось, я масштабу. 442 00:21:11,400 --> 00:21:15,850 >> Я тільки що отримав цей короткий шаблон тут нічого насправді в ньому. 443 00:21:15,850 --> 00:21:20,660 Ми просто збираємося, щоб швидко написати HTML-програма, в якій ми тільки що 444 00:21:20,660 --> 00:21:22,050 привітатися зі світом. 445 00:21:22,050 --> 00:21:24,970 Так само, як і в C, тепер ми тільки збирається це зробити в HTML. 446 00:21:24,970 --> 00:21:28,250 Хто-небудь хоче, щоб насправді просто спробуйте дати мені перше, що ви 447 00:21:28,250 --> 00:21:31,870 б поставити в HTML документі? 448 00:21:31,870 --> 00:21:32,850 Так. 449 00:21:32,850 --> 00:21:35,965 >> Аудиторія: кронштейни, кнопку [нерозбірливо]. 450 00:21:35,965 --> 00:21:36,590 ANDI Пен: Так. 451 00:21:36,590 --> 00:21:47,200 452 00:21:47,200 --> 00:21:50,930 Так щось, що дуже унікальний для HTML, що ми зазвичай традиційно 453 00:21:50,930 --> 00:21:56,080 Не стикався в іншу команду мови програмування лінійного рівня 454 00:21:56,080 --> 00:21:59,890 є те, що ми насправді вказати тип файлу 455 00:21:59,890 --> 00:22:01,987 що це буде у верхній частині коду. 456 00:22:01,987 --> 00:22:04,570 Таким чином, в цьому я думаю, що instance-- це право команда, вірно? 457 00:22:04,570 --> 00:22:10,050 458 00:22:10,050 --> 00:22:10,550 Так. 459 00:22:10,550 --> 00:22:14,860 У верхній частині, ви просто хочете, щоб включити Вибух DOCTYPE HTML в дужках тільки 460 00:22:14,860 --> 00:22:17,670 розповісти комп'ютер, гей, дивитися. 461 00:22:17,670 --> 00:22:20,050 І документ HTML приходить. 462 00:22:20,050 --> 00:22:22,250 А потім, як ми хочемо щоб почати наш файл? 463 00:22:22,250 --> 00:22:25,540 Якщо ми просто хочемо сказати, привіт, є веб-сторінки, яка говорить привіт до світу, 464 00:22:25,540 --> 00:22:26,915 як ми йдемо про будівництво цього? 465 00:22:26,915 --> 00:22:32,910 466 00:22:32,910 --> 00:22:35,300 >> Насправді, давайте звернемося до Google. 467 00:22:35,300 --> 00:22:36,910 І ми можемо насправді це зробити. 468 00:22:36,910 --> 00:22:43,170 469 00:22:43,170 --> 00:22:43,670 Так. 470 00:22:43,670 --> 00:22:44,840 Там ми йдемо. 471 00:22:44,840 --> 00:22:47,630 Так HTML. 472 00:22:47,630 --> 00:22:52,390 Як ви можете бачити, мій браузер насправді автоматично укладання це для мене. 473 00:22:52,390 --> 00:22:56,010 >> Те ж саме, як і в C, коли вам створити відкриту фігурну дужку, 474 00:22:56,010 --> 00:22:59,020 Ваш браузер автоматично додає в тісному фігурною дужкою. 475 00:22:59,020 --> 00:23:02,210 На щастя, наш IDE любить зробити це для нас. 476 00:23:02,210 --> 00:23:05,490 Так що тепер ми можемо роду типу початок тега, 477 00:23:05,490 --> 00:23:09,139 і це буде завжди говорити нам пам'ятаю, щоб ввести кінець тега. 478 00:23:09,139 --> 00:23:10,680 Я думаю, що це має бути капіталізовані. 479 00:23:10,680 --> 00:23:15,510 480 00:23:15,510 --> 00:23:21,760 А потім ми хочемо додати, завжди, голова, в якій є назва. 481 00:23:21,760 --> 00:23:25,270 482 00:23:25,270 --> 00:23:29,160 Ми просто хочемо, щоб, може, викликати це привіт, а потім тіло. 483 00:23:29,160 --> 00:23:34,010 484 00:23:34,010 --> 00:23:36,310 >> І там ви йдете. 485 00:23:36,310 --> 00:23:39,650 Тобто фактично наша HTML-документ. 486 00:23:39,650 --> 00:23:45,030 Таким чином, спосіб, що будь-який HTML-документ завжди в стилі in-- ж саме 487 00:23:45,030 --> 00:23:46,720 з Int основний порожнечу. 488 00:23:46,720 --> 00:23:49,600 Ви завжди хочете мати HTML відкритий і закриває тег 489 00:23:49,600 --> 00:23:52,100 У верхній і нижній частині коду. 490 00:23:52,100 --> 00:23:56,900 >> Ви хочете мати голову всередині який містить назву, просто все, що 491 00:23:56,900 --> 00:24:01,430 збирається, щоб відобразити вкладку вашого веб сторінка, а потім тіло, усередині якого 492 00:24:01,430 --> 00:24:04,120 фактично відображення вмісту того, що ви хочете зробити. 493 00:24:04,120 --> 00:24:08,220 Так що, якщо ви хочете, щоб реально працювати це, я йду, щоб віддалитися. 494 00:24:08,220 --> 00:24:12,740 Ви можете фактично почати apache50 почати точку. 495 00:24:12,740 --> 00:24:15,650 496 00:24:15,650 --> 00:24:16,150 Прохолодний. 497 00:24:16,150 --> 00:24:18,980 І так як ви можете бачити, тепер ця посилання вискочив. 498 00:24:18,980 --> 00:24:21,940 Це говорить ваш сайт зараз доступні в якійсь посилання нижче. 499 00:24:21,940 --> 00:24:25,910 Таким чином, всі наші IDE має done-- НЕ IDE, sorry-- да, 500 00:24:25,910 --> 00:24:33,280 наш IDE зробив це створити мережу посилання на який всі наші веб-сторінок 501 00:24:33,280 --> 00:24:35,407 можуть бути доступні на сервері. 502 00:24:35,407 --> 00:24:36,490 Отже, давайте поглянемо тут. 503 00:24:36,490 --> 00:24:40,240 >> Давайте натиснемо на це, перейдіть до Hello.html. 504 00:24:40,240 --> 00:24:42,895 І ви бачите, дуже простий Веб-сторінка для привет світ. 505 00:24:42,895 --> 00:24:46,477 506 00:24:46,477 --> 00:24:47,420 ДОБРЕ. 507 00:24:47,420 --> 00:24:50,513 Ми насправді відбувається тільки є everyone-- так, то, що трапилося? 508 00:24:50,513 --> 00:24:52,353 >> АУДИТОРІЯ: У мене є основне питання. 509 00:24:52,353 --> 00:24:52,978 ANDI Пен: Так. 510 00:24:52,978 --> 00:24:58,064 АУДИТОРІЯ: Як зберегти Ваш файл як HTML? 511 00:24:58,064 --> 00:24:58,730 ANDI Пен: Так. 512 00:24:58,730 --> 00:25:02,960 513 00:25:02,960 --> 00:25:10,820 Так, якби я, щоб створити новий файл, якщо я новий файл, Untittle, якщо я роблю, 514 00:25:10,820 --> 00:25:14,390 section.html, бум, це все, що я повинен робити. 515 00:25:14,390 --> 00:25:15,363 >> АУДИТОРІЯ: [нерозбірливо]? 516 00:25:15,363 --> 00:25:15,946 ANDI PENG: Ні 517 00:25:15,946 --> 00:25:16,660 АУДИТОРІЯ: [нерозбірливо]. 518 00:25:16,660 --> 00:25:17,240 ANDI PENG: Ні 519 00:25:17,240 --> 00:25:18,156 АУДИТОРІЯ: [нерозбірливо]. 520 00:25:18,156 --> 00:25:19,110 ANDI Пен: Так. 521 00:25:19,110 --> 00:25:24,300 Досить багато, розширення на файл, який знаходиться всередині вашого IDE, 522 00:25:24,300 --> 00:25:27,840 що говорить комп'ютер, що каже оглядач, гей, дивитися. 523 00:25:27,840 --> 00:25:30,480 Це буде код написані на цій мові. 524 00:25:30,480 --> 00:25:34,240 Так, наприклад, в Microsoft Слово, те, що роблять всі документи Word, 525 00:25:34,240 --> 00:25:37,070 закінчуватися, яке розширення? 526 00:25:37,070 --> 00:25:39,830 .doc .docx або, вірно? 527 00:25:39,830 --> 00:25:42,299 >> Все, що робить Вказує Ваша операційна система, гей, 528 00:25:42,299 --> 00:25:43,840 у вас є документ Word, підійшовши. 529 00:25:43,840 --> 00:25:44,940 Відкрийте його за Word. 530 00:25:44,940 --> 00:25:46,955 Те ж саме з PDF-файлів. 531 00:25:46,955 --> 00:25:49,650 Він знає, о, мені потрібно щоб відкрити цей файл 532 00:25:49,650 --> 00:25:52,020 з Adobe Reader або Adobe Acrobat. 533 00:25:52,020 --> 00:25:56,130 >> І так розширень Працюйте з так само, як на комп'ютері. 534 00:25:56,130 --> 00:26:00,750 Якщо ви вкажіть вашу сторінку код буде названий HTML, то вона знає 535 00:26:00,750 --> 00:26:01,880 ой, у вас є HTML-код. 536 00:26:01,880 --> 00:26:04,890 Я збираюся розглядати його як HTML коду. 537 00:26:04,890 --> 00:26:06,600 Так що це супер розумний в цьому сенсі. 538 00:26:06,600 --> 00:26:11,360 539 00:26:11,360 --> 00:26:18,730 >> Таким чином, кожен, давайте, як 10 хвилин і просто створювати свої власні веб-сайти. 540 00:26:18,730 --> 00:26:21,020 Давайте додамо в прекрасних речей. 541 00:26:21,020 --> 00:26:23,440 Не соромтеся говорити все, що ви хочете. 542 00:26:23,440 --> 00:26:27,890 Я просто хочу, щоб переконатися, що сервери загальні працюєте правильно 543 00:26:27,890 --> 00:26:31,220 перш, ніж ми звільнить вас в PSET. 544 00:26:31,220 --> 00:26:33,490 Тому що, якщо ваші сервери не балотуватися на PSET, 545 00:26:33,490 --> 00:26:34,847 що буде насправді, дуже погано. 546 00:26:34,847 --> 00:27:17,380 547 00:27:17,380 --> 00:27:21,093 >> Я просто хочу, щоб плавати навколо та бачити, що все це працює. 548 00:27:21,093 --> 00:27:26,965 549 00:27:26,965 --> 00:27:27,590 Як поживаєш? 550 00:27:27,590 --> 00:27:29,048 >> АУДИТОРІЯ: Я просто включив мій комп'ютер. 551 00:27:29,048 --> 00:27:29,923 >> ANDI Пен: Це нормально. 552 00:27:29,923 --> 00:27:41,200 553 00:27:41,200 --> 00:27:42,390 >> АУДИТОРІЯ: [нерозбірливо]. 554 00:27:42,390 --> 00:27:44,284 >> ANDI Пен: Просто ваш IDE. 555 00:27:44,284 --> 00:27:44,784 Так. 556 00:27:44,784 --> 00:27:54,040 557 00:27:54,040 --> 00:27:55,910 >> АУДИТОРІЯ: [нерозбірливо]. 558 00:27:55,910 --> 00:27:57,590 >> ANDI Пен: Це нормально. 559 00:27:57,590 --> 00:27:59,491 >> АУДИТОРІЯ: [нерозбірливо]. 560 00:27:59,491 --> 00:28:00,490 ANDI Пен: абсолютно нормально. 561 00:28:00,490 --> 00:28:47,705 562 00:28:47,705 --> 00:28:51,530 Чи всі доступ до їх веб-сервера в порядку? 563 00:28:51,530 --> 00:28:52,970 Є apache50 працює ОК? 564 00:28:52,970 --> 00:28:54,700 Я думаю, що в деяких інші розділи, ми 565 00:28:54,700 --> 00:28:58,790 були проблеми з людьми, не можливість доступу до сервера. 566 00:28:58,790 --> 00:28:59,290 Так. 567 00:28:59,290 --> 00:29:05,764 Таким чином, ви просто запустіть apache50 простір почати космічну період. 568 00:29:05,764 --> 00:29:06,680 АУДИТОРІЯ: [нерозбірливо]. 569 00:29:06,680 --> 00:29:07,610 ANDI Пен: Так. 570 00:29:07,610 --> 00:29:08,294 Добре? 571 00:29:08,294 --> 00:29:09,210 >> АУДИТОРІЯ: [нерозбірливо]. 572 00:29:09,210 --> 00:29:12,530 573 00:29:12,530 --> 00:29:13,350 >> ANDI Пен: О, добре. 574 00:29:13,350 --> 00:29:14,808 Таким чином, ви повинні мати простір. 575 00:29:14,808 --> 00:29:15,425 Так apache50-- 576 00:29:15,425 --> 00:29:16,115 >> АУДИТОРІЯ: я і зробив. 577 00:29:16,115 --> 00:29:17,661 >> ANDI Пен: --start простір. 578 00:29:17,661 --> 00:29:18,660 АУДИТОРІЯ: О, простір точка. 579 00:29:18,660 --> 00:29:20,110 ANDI Пен: Так, простір точка. 580 00:29:20,110 --> 00:29:23,230 Ось так. 581 00:29:23,230 --> 00:29:25,490 Отже, якщо у вас є HTML-сторінка, створена, 582 00:29:25,490 --> 00:29:28,560 то ви можете просто перейти безпосередньо за посиланням, що вказує. 583 00:29:28,560 --> 00:29:30,539 І ви повинні бути в змозі отримати доступ до його. 584 00:29:30,539 --> 00:29:35,130 585 00:29:35,130 --> 00:29:37,876 >> Все вдалося доступ до своїх веб-сторінок в порядку? 586 00:29:37,876 --> 00:29:39,339 >> АУДИТОРІЯ: [нерозбірливо]. 587 00:29:39,339 --> 00:29:40,380 ANDI Пен: О, це нормально. 588 00:29:40,380 --> 00:29:43,551 589 00:29:43,551 --> 00:29:44,964 >> АУДИТОРІЯ: [нерозбірливо]. 590 00:29:44,964 --> 00:29:45,630 ANDI Пен: Так. 591 00:29:45,630 --> 00:29:48,171 Я думаю, що ви можете відкрити це у вашому браузері, браузер 592 00:29:48,171 --> 00:29:49,955 і не тільки ваш IDE-браузер. 593 00:29:49,955 --> 00:29:51,580 Так, я думаю, що якщо ви копіюєте і вставляєте його. 594 00:29:51,580 --> 00:29:53,920 >> АУДИТОРІЯ: А потім як ми його виключити? 595 00:29:53,920 --> 00:29:54,590 [Нерозбірливо] 596 00:29:54,590 --> 00:29:58,720 >> ANDI Пен: Так, ви apache50 зупинятися не період. 597 00:29:58,720 --> 00:29:59,220 Так. 598 00:29:59,220 --> 00:30:01,180 >> АУДИТОРІЯ: [нерозбірливо]. 599 00:30:01,180 --> 00:30:02,768 >> ANDI Пен: При відсутності періоду. 600 00:30:02,768 --> 00:30:04,051 Так. 601 00:30:04,051 --> 00:30:04,550 Там ми йдемо. 602 00:30:04,550 --> 00:30:05,050 Так. 603 00:30:05,050 --> 00:30:08,480 604 00:30:08,480 --> 00:30:09,855 Ми створюємо наші власні веб-сторінки. 605 00:30:09,855 --> 00:30:10,646 >> АУДИТОРІЯ: О, круто. 606 00:30:10,646 --> 00:30:13,396 607 00:30:13,396 --> 00:30:14,062 ANDI Пен: Так. 608 00:30:14,062 --> 00:30:20,484 609 00:30:20,484 --> 00:30:22,420 >> Залу: У мене питання. 610 00:30:22,420 --> 00:30:25,294 Так Apache 50-- 611 00:30:25,294 --> 00:30:26,731 >> ANDI Пен: 50, так. 612 00:30:26,731 --> 00:30:28,168 >> АУДИТОРІЯ: [нерозбірливо]. 613 00:30:28,168 --> 00:30:29,130 >> ANDI Пен: Що? 614 00:30:29,130 --> 00:30:29,750 Це дивно. 615 00:30:29,750 --> 00:30:32,244 Дивись, що було свого роду питання що відбувається раніше. 616 00:30:32,244 --> 00:30:37,820 617 00:30:37,820 --> 00:30:38,730 ДОБРЕ. 618 00:30:38,730 --> 00:30:39,800 Дивись на мене після розділу. 619 00:30:39,800 --> 00:30:42,320 Тому що у нас є деякі проблеми з сервером. 620 00:30:42,320 --> 00:30:44,325 >> І ви хочете, щоб зробити Переконайтеся, що ваш сервер 621 00:30:44,325 --> 00:30:45,700 , Перед запуском у PSET. 622 00:30:45,700 --> 00:30:47,800 Тому що ви будете мати потребу в цьому. 623 00:30:47,800 --> 00:30:48,300 Так. 624 00:30:48,300 --> 00:30:51,299 Чи хтось ще, що не було можливість отримати їх сервер, щоб почати? 625 00:30:51,299 --> 00:31:12,410 626 00:31:12,410 --> 00:31:17,840 >> Для тих з вас, хто хоче, щоб додати додаткова стиль ваших веб-сторінок, 627 00:31:17,840 --> 00:31:20,450 ми можемо насправді робити те, що Девід зробив в лекції, а також, 628 00:31:20,450 --> 00:31:24,070 що створити додатковий стиль лист, яке є точка CSS, Cascading 629 00:31:24,070 --> 00:31:30,080 Стиль Ліст і насправді просто додати його в. 630 00:31:30,080 --> 00:31:33,550 Так, наприклад, я тільки що створили в значній мірі майже точно такий же одним 631 00:31:33,550 --> 00:31:37,180 Девід зробив в лекції. 632 00:31:37,180 --> 00:31:39,220 Ви можете в значній мірі просто зробити тіло. 633 00:31:39,220 --> 00:31:45,980 >> Ви є те, що називають теги, в яких Ви можете звернутися до IDE незалежно розділ 634 00:31:45,980 --> 00:31:48,650 Ви хочете у вашій актуально HTML сторінки. 635 00:31:48,650 --> 00:31:54,890 Таким чином, тіло сторінки, ви можна зробити вирівнювання тексту центр. 636 00:31:54,890 --> 00:31:58,110 І тоді я буду творчий тег називається верхня всередині 637 00:31:58,110 --> 00:32:01,860 з яких я хочу ці речі відбудеться, призначити більший розмір пікселя 638 00:32:01,860 --> 00:32:03,104 для шрифту. 639 00:32:03,104 --> 00:32:04,520 Я хочу вага шрифту повинен бути сміливим. 640 00:32:04,520 --> 00:32:06,478 І я хочу, щоб колір бути синім, просто довільне 641 00:32:06,478 --> 00:32:08,570 значення, що я вирішив вибрати. 642 00:32:08,570 --> 00:32:10,870 Я можу створити ще один тег з ім'ям середній. 643 00:32:10,870 --> 00:32:12,640 Розмір шрифту, зробити це трохи менше. 644 00:32:12,640 --> 00:32:17,730 І тоді я можу створити інший тег називається нижньою, де я хочу розмір шрифту 645 00:32:17,730 --> 00:32:20,900 ще менше раніше. 646 00:32:20,900 --> 00:32:25,630 >> І так в значній мірі це тільки приклад з вихідного коду або вихідних таблиць стилів 647 00:32:25,630 --> 00:32:27,400 що це дуже легко просто Google. 648 00:32:27,400 --> 00:32:31,560 Якщо ти говориш, о, я хочу, щоб мій шрифт щоб бути курсивом і темно-зелений, 649 00:32:31,560 --> 00:32:33,980 Ви, ймовірно, Google, а потім він скаже вам, 650 00:32:33,980 --> 00:32:37,590 відповідні теги або ідентифікатори, щоб створити. 651 00:32:37,590 --> 00:32:41,670 І так як, що ви насправді вигляд у цього в HTML документі 652 00:32:41,670 --> 00:32:45,660 або використовувати це все у вас є щоб зробити тут в голову 653 00:32:45,660 --> 00:32:48,560 Додати посилання на таблицю стилів. 654 00:32:48,560 --> 00:32:53,600 >> Таким чином, ви можете просто зв'язати HREF рівних всі ім'я вашого стилів 655 00:32:53,600 --> 00:32:54,590 є. 656 00:32:54,590 --> 00:32:56,740 І тоді відносини таблиця стилів. 657 00:32:56,740 --> 00:33:00,700 Таким чином, всередині будь-якого документа HTML, до тих пір, як ви включити цей точка CSS лист, 658 00:33:00,700 --> 00:33:07,140 Ви повинні бути в змозі отримати доступ до і мають властивості існує. 659 00:33:07,140 --> 00:33:10,370 >> Так, наприклад, тут Я тільки створити ще один приклад веб-сторінки. 660 00:33:10,370 --> 00:33:15,680 Це ласкаво просимо в розділ CS50 По вівторках з 2:00 до 3:30 зі мною. 661 00:33:15,680 --> 00:33:20,300 А потім я додав, що прекрасний образ ми потенційно повинні бути в змозі бачити. 662 00:33:20,300 --> 00:33:24,620 >> Так що, якщо ви подивіться тут, якщо ви йдете в style.html, 663 00:33:24,620 --> 00:33:26,310 ми створили веб-сторінку з кошенятами. 664 00:33:26,310 --> 00:33:29,420 Тому що кошеня є дивовижними. 665 00:33:29,420 --> 00:33:33,570 Тому додавання зображення тільки IMG SRC посилання. 666 00:33:33,570 --> 00:33:36,260 667 00:33:36,260 --> 00:33:38,310 >> Досить багато, якщо є якої-небудь функції 668 00:33:38,310 --> 00:33:40,268 Ви хочете, щоб додати до вашого website-- так скажемо, 669 00:33:40,268 --> 00:33:43,290 Ви хочете, щоб додати меню або панель пошуку або як 670 00:33:43,290 --> 00:33:46,450 image-- тільки Google, як це зробити. 671 00:33:46,450 --> 00:33:48,277 І ви просто грюкнути в цьому форматі. 672 00:33:48,277 --> 00:33:50,110 І ви можете просто досить багато просто додати його в. 673 00:33:50,110 --> 00:33:52,670 Це дійсно, дуже просто. 674 00:33:52,670 --> 00:33:55,014 >> Ми створюємо наш власний веб-сторінки прямо зараз. 675 00:33:55,014 --> 00:33:55,680 Якщо ти хочеш-- 676 00:33:55,680 --> 00:33:56,580 >> АУДИТОРІЯ: [нерозбірливо] 677 00:33:56,580 --> 00:33:57,470 >> ANDI Пен: На ​​жаль? 678 00:33:57,470 --> 00:33:59,310 >> АУДИТОРІЯ: [нерозбірливо]. 679 00:33:59,310 --> 00:34:01,340 >> ANDI Пен: О, DIV просто поділ 680 00:34:01,340 --> 00:34:04,370 розповідав мені, що, ну, у мене є деяка частина називається 681 00:34:04,370 --> 00:34:07,480 середній, в якому я застосовую мій CSS тег, а потім 682 00:34:07,480 --> 00:34:09,619 мій інший поділ з нижньої. 683 00:34:09,619 --> 00:34:10,785 Це все, що говорить вам. 684 00:34:10,785 --> 00:34:12,743 Тому що це приємно тримати речі акуратні в порядку, 685 00:34:12,743 --> 00:34:16,304 так що програма знає, як саме працювати. 686 00:34:16,304 --> 00:34:18,929 І думаю, що я можу скопіювати вставте в моїй фактичної браузері, а також. 687 00:34:18,929 --> 00:34:21,110 Це повинно бути в порядку. 688 00:34:21,110 --> 00:34:21,610 Так. 689 00:34:21,610 --> 00:34:24,330 690 00:34:24,330 --> 00:34:25,989 Ура. 691 00:34:25,989 --> 00:34:29,380 Так що, якщо кожен хоче, щоб просто спробуйте створити веб-сторінку, 692 00:34:29,380 --> 00:34:32,169 ми будемо приймати ще два-три хвилини. 693 00:34:32,169 --> 00:34:34,460 Я просто хочу, щоб переконатися, що сервери загальні працюєте 694 00:34:34,460 --> 00:34:36,941 і кожен має Ідея про те, як це зробити. 695 00:34:36,941 --> 00:34:38,774 Якщо ви, хлопці, хочете, щоб прийняти ваші комп'ютери. 696 00:34:38,774 --> 00:34:44,630 697 00:34:44,630 --> 00:34:45,635 Проте не працює? 698 00:34:45,635 --> 00:34:47,420 >> АУДИТОРІЯ: Я просто [нерозбірливо]. 699 00:34:47,420 --> 00:34:49,838 >> ANDI Пен: Може бути, спробувати оновити 50, а також. 700 00:34:49,838 --> 00:34:51,392 Так. 701 00:34:51,392 --> 00:34:52,308 АУДИТОРІЯ: [нерозбірливо]. 702 00:34:52,308 --> 00:35:17,502 703 00:35:17,502 --> 00:35:18,990 >> ANDI Пен: Так. 704 00:35:18,990 --> 00:35:23,750 Таким чином, шлях, який ви починаєте новий веб-сервер на IDE просто 705 00:35:23,750 --> 00:35:27,889 зробити apache50 простір Старт космічної точки. 706 00:35:27,889 --> 00:35:30,430 Я просто хотів, щоб переконатися, сервери загальні працюєте ОК. 707 00:35:30,430 --> 00:35:31,763 >> АУДИТОРІЯ: Тут, на терміналі? 708 00:35:31,763 --> 00:35:33,334 ANDI Пен: Так. 709 00:35:33,334 --> 00:35:34,250 АУДИТОРІЯ: [нерозбірливо]. 710 00:35:34,250 --> 00:35:38,000 711 00:35:38,000 --> 00:35:38,985 >> ANDI Пен: Apache. 712 00:35:38,985 --> 00:35:42,010 Насправді, я думаю, що ти працює вже щось. 713 00:35:42,010 --> 00:35:43,145 Так, ви насправді працює інший сервер. 714 00:35:43,145 --> 00:35:43,830 Так, ви добре. 715 00:35:43,830 --> 00:35:45,085 Поки що працює, ти в порядку. 716 00:35:45,085 --> 00:35:45,626 >> АУДИТОРІЯ: ОК. 717 00:35:45,626 --> 00:35:47,615 ANDI Пен: Там двоє способи запуску серверів. 718 00:35:47,615 --> 00:35:49,990 До тих пір, як один із способів працює, все в порядку. 719 00:35:49,990 --> 00:36:18,470 720 00:36:18,470 --> 00:36:21,680 Ми візьмемо ще хвилину просто вид закінчити 721 00:36:21,680 --> 00:36:25,280 штрихи на те, що веб-сторінки, ви, хлопці хотіли зробити. 722 00:36:25,280 --> 00:36:26,830 >> Все працює, до речі ,? 723 00:36:26,830 --> 00:36:30,910 Сервери Загальні є Крім того, для запуску ваших? 724 00:36:30,910 --> 00:36:32,210 Ми розберемося, що з. 725 00:36:32,210 --> 00:36:34,137 І HTML досить простий. 726 00:36:34,137 --> 00:36:35,220 Так що я думаю, що ми всі добре. 727 00:36:35,220 --> 00:36:38,260 728 00:36:38,260 --> 00:36:38,760 Так. 729 00:36:38,760 --> 00:36:41,070 Я повернуся. 730 00:36:41,070 --> 00:36:42,797 >> АУДИТОРІЯ: [нерозбірливо]. 731 00:36:42,797 --> 00:36:43,380 ANDI Пен: ОК. 732 00:36:43,380 --> 00:36:44,770 АУДИТОРІЯ: Так що це просто почав, щоб завантажити. 733 00:36:44,770 --> 00:36:45,686 ANDI Пен: Не турбуйтеся. 734 00:36:45,686 --> 00:36:49,590 735 00:36:49,590 --> 00:36:52,680 Так HTML, є вихідний код, який буде онлайн після розділу. 736 00:36:52,680 --> 00:36:54,810 Крім того, Девід ціле купа онлайн, а також. 737 00:36:54,810 --> 00:36:58,190 Просто вид погляд на нього, щоб бачити, як HTML-сторінки написані. 738 00:36:58,190 --> 00:36:59,920 Це досить легко. 739 00:36:59,920 --> 00:37:03,979 Все, що ви не знаєте, ви в значній багато якраз Google, і ви добре. 740 00:37:03,979 --> 00:37:06,270 Я просто хочу, щоб переконатися, що Ваші сервери працюють. 741 00:37:06,270 --> 00:37:12,962 742 00:37:12,962 --> 00:37:14,880 >> АУДИТОРІЯ: він робить це часто? 743 00:37:14,880 --> 00:37:16,421 >> ANDI Пен: Це ніколи не сталося зі мною. 744 00:37:16,421 --> 00:37:18,470 745 00:37:18,470 --> 00:37:20,782 Я не знаю, це може навіть зимують. 746 00:37:20,782 --> 00:37:22,516 >> АУДИТОРІЯ: [нерозбірливо]. 747 00:37:22,516 --> 00:37:25,140 ANDI Пен: Я думаю, що everyone-- мій ніколи не зимували раніше. 748 00:37:25,140 --> 00:37:26,860 І я не знаю, чому. 749 00:37:26,860 --> 00:37:27,566 Це дивно. 750 00:37:27,566 --> 00:37:29,310 >> АУДИТОРІЯ: [нерозбірливо]. 751 00:37:29,310 --> 00:37:30,643 >> ANDI Пен: твоє зимуючих? 752 00:37:30,643 --> 00:37:32,615 753 00:37:32,615 --> 00:37:33,669 >> АУДИТОРІЯ: [нерозбірливо]. 754 00:37:33,669 --> 00:37:34,335 ANDI Пен: Так. 755 00:37:34,335 --> 00:37:39,122 756 00:37:39,122 --> 00:37:39,872 АУДИТОРІЯ: Це нормально. 757 00:37:39,872 --> 00:37:40,622 Тому, як тільки це відкрито. 758 00:37:40,622 --> 00:37:41,760 ANDI Пен: ОК. 759 00:37:41,760 --> 00:37:43,940 Ми будемо мати справу з якоюсь сервер питання після розділу. 760 00:37:43,940 --> 00:37:44,860 Ви повинні бути в порядку. 761 00:37:44,860 --> 00:37:47,950 Хоча, ви хочете, щоб переконатися, що ви отримати їх вирішити, перш ніж покинути. 762 00:37:47,950 --> 00:37:49,380 Тому що, якщо ваш сервер-х не працює, то ви 763 00:37:49,380 --> 00:37:52,004 не буде в змозі зробити PSET, як і будь-якій частині PSET. 764 00:37:52,004 --> 00:37:54,200 Отже, ви хочете, щоб переконатися, що це працює. 765 00:37:54,200 --> 00:37:54,831 Прохолодний. 766 00:37:54,831 --> 00:37:55,330 Добре. 767 00:37:55,330 --> 00:37:56,490 Попрощайтеся кошенят. 768 00:37:56,490 --> 00:37:59,670 Я провів багато часу, шукає що кошеня картина надіти. 769 00:37:59,670 --> 00:38:02,272 Так, в кожному разі. 770 00:38:02,272 --> 00:38:04,950 >> АУДИТОРІЯ: [нерозбірливо]. 771 00:38:04,950 --> 00:38:05,770 >> ANDI Пен: На ​​жаль? 772 00:38:05,770 --> 00:38:07,345 >> АУДИТОРІЯ: [нерозбірливо]. 773 00:38:07,345 --> 00:38:08,970 ANDI Пен: я думаю, що це на веб-сайті. 774 00:38:08,970 --> 00:38:11,064 Як специфікації? 775 00:38:11,064 --> 00:38:12,020 >> АУДИТОРІЯ: [нерозбірливо]. 776 00:38:12,020 --> 00:38:16,080 Я думаю, що це просто спекуляція онлайн в тиждень сім. 777 00:38:16,080 --> 00:38:18,850 Я думаю, це називається pset6, навіть хоча ми на тиждень, яка сім 778 00:38:18,850 --> 00:38:19,641 трохи обчислень. 779 00:38:19,641 --> 00:38:23,130 АУДИТОРІЯ: Але я маю на увазі, якщо вам хочу подивитися at-- якщо ви 780 00:38:23,130 --> 00:38:28,666 хочу, щоб підтягти нашу версію веб-сайт з нашого роз'єднувати? 781 00:38:28,666 --> 00:38:31,820 Так як server.c є PSET, вірно? 782 00:38:31,820 --> 00:38:36,514 Якщо ви хочете, щоб дивитися на це, як, як це перевіряє? 783 00:38:36,514 --> 00:38:38,680 ANDI Пен: О, так насправді PSET, все, що ми робимо 784 00:38:38,680 --> 00:38:41,405 тут implementing-- тут, Я піду цим коротко. 785 00:38:41,405 --> 00:38:44,187 786 00:38:44,187 --> 00:38:47,020 Таким чином, для всіх, хто просто одержав в розділі, ви, хлопці, пощастило. 787 00:38:47,020 --> 00:38:49,340 Існує дуже мало матеріалу насправді охоплюють сьогодні. 788 00:38:49,340 --> 00:38:52,585 >> Я просто хочу, щоб провести наступний 20 хвилин перехідні Pset допомоги. 789 00:38:52,585 --> 00:38:55,210 Тому що деякі корисні Функції, які допоможуть вашому житті. 790 00:38:55,210 --> 00:38:57,501 І, сподіваюся, ми будемо з звідси в як 20 хвилин. 791 00:38:57,501 --> 00:38:58,360 ДОБРЕ. 792 00:38:58,360 --> 00:39:00,252 >> Так pset7 неправильно. 793 00:39:00,252 --> 00:39:02,460 Навіть якщо ми на тиждень сьомій, це насправді pset6. 794 00:39:02,460 --> 00:39:04,220 Я змінити це. 795 00:39:04,220 --> 00:39:07,550 Все, що ми робимо в pset6 створює веб-сервер. 796 00:39:07,550 --> 00:39:09,010 Це звучить дуже страшно. 797 00:39:09,010 --> 00:39:11,010 >> І особливо для тих, з вас, хто вже 798 00:39:11,010 --> 00:39:14,530 подивився на код розподілу, є багато коду, багато коду. 799 00:39:14,530 --> 00:39:15,570 Але абсолютно ОК. 800 00:39:15,570 --> 00:39:17,750 Тому серцевини частина насправді створення 801 00:39:17,750 --> 00:39:20,140 сервер виконується нами. 802 00:39:20,140 --> 00:39:22,090 Все, що ви насправді запитав зробити в цьому PSET 803 00:39:22,090 --> 00:39:25,350 просто зробити деякі маніпуляції з рядками у файлі вводу / виводу. Це насправді 804 00:39:25,350 --> 00:39:27,570 як досить простий. 805 00:39:27,570 --> 00:39:30,830 >> Отже, коли ви спочатку завантажити that-- які тут насправді вже завантажені 806 00:39:30,830 --> 00:39:32,540 PSET та розглянули? 807 00:39:32,540 --> 00:39:33,040 Добре. 808 00:39:33,040 --> 00:39:33,540 Так. 809 00:39:33,540 --> 00:39:36,042 Там як 500 рядків коду що ви збираєтеся бути, як 810 00:39:36,042 --> 00:39:36,750 що відбувається? 811 00:39:36,750 --> 00:39:38,177 І це абсолютно нормально. 812 00:39:38,177 --> 00:39:39,760 Переконайтеся, що ви дивитеся наскрізні. 813 00:39:39,760 --> 00:39:41,610 Тому що Девід і-- я не знаю. 814 00:39:41,610 --> 00:39:43,870 Я не думаю, що це Zamyla, це одне. 815 00:39:43,870 --> 00:39:47,040 Але я думаю, деякі інші наскрізні досить 816 00:39:47,040 --> 00:39:49,510 корисним у плані просто даючи вам знати 817 00:39:49,510 --> 00:39:51,780 що відбувається всередині вашого коду. 818 00:39:51,780 --> 00:39:53,330 >> І це абсолютно ОК. 819 00:39:53,330 --> 00:39:57,860 Тому що чотири функції, які ви запропоновано здійснити насправді 820 00:39:57,860 --> 00:39:59,720 від нуля до спільного з реальною сервері. 821 00:39:59,720 --> 00:40:02,590 Всі вони повинні зробити, це просто розбір різних рядків, 822 00:40:02,590 --> 00:40:05,780 пошук по струн, щоб переконатися, що робите 823 00:40:05,780 --> 00:40:07,750 те, що вони повинні робити. 824 00:40:07,750 --> 00:40:11,200 >> Так з цією метою, є деякі дуже, дуже корисні функції, 825 00:40:11,200 --> 00:40:13,630 особливо для рядка маніпуляції, що ми всі повинні 826 00:40:13,630 --> 00:40:15,879 перейти, що я думав, що я бути дуже корисним для вас, хлопці 827 00:40:15,879 --> 00:40:19,130 щоб дізнатися, перш ніж намагатися PSET. 828 00:40:19,130 --> 00:40:23,350 І всі вони містяться у вашому string.h бібліотеки. 829 00:40:23,350 --> 00:40:25,980 Там, напевно, більш корисним Функції Я не включені тут, 830 00:40:25,980 --> 00:40:30,740 бо я або ніколи не використовувати їх чи може бути, я просто не знав, що вони існують. 831 00:40:30,740 --> 00:40:32,440 >> Не соромтеся, щоб поглянути через student.h. 832 00:40:32,440 --> 00:40:36,460 Тому що це буде багато функцій, які дуже корисні. 833 00:40:36,460 --> 00:40:43,050 Таким чином, шість, що я використовую найбільше в моїй PSET, коли я робив це минулого тижня 834 00:40:43,050 --> 00:40:49,620 були strtok, strchr, strrcher, strstr, strcasecmp, і виклик цієї функції. 835 00:40:49,620 --> 00:40:53,060 І так останні два може здатися досить добре знайомі більшості з вас. 836 00:40:53,060 --> 00:40:56,910 Вул нагода порівняти, все це робить порівняння струни, щоб перевірити їх на рівність, 837 00:40:56,910 --> 00:40:58,110 у тому числі справи. 838 00:40:58,110 --> 00:41:01,430 І STRCPY просто копіює один рядок в буфер. 839 00:41:01,430 --> 00:41:04,430 >> І так ці двоє повинні здатися дуже знайомі з вами, хлопці в цій точці. 840 00:41:04,430 --> 00:41:07,100 Тому що ми використовували їх багато, особливо за останні psets. 841 00:41:07,100 --> 00:41:10,734 Але, можливо, перші чотири Ви не бачили досі. 842 00:41:10,734 --> 00:41:12,400 Але я збираюся просто ходити через них. 843 00:41:12,400 --> 00:41:15,620 Тому що вони збираються зробити ваше життя дійсно, дійсно легко for-- не легко, 844 00:41:15,620 --> 00:41:19,830 але набагато простіше для цієї майбутньої PSET. 845 00:41:19,830 --> 00:41:20,420 >> ДОБРЕ. 846 00:41:20,420 --> 00:41:27,720 Так символ * strtok, це функція визначення для цієї функції, що містяться 847 00:41:27,720 --> 00:41:31,050 в рядку, ч бібліотеки. 848 00:41:31,050 --> 00:41:34,340 Якщо ви отримуєте вхід обвуглене * Рядок, яка є просто рядок, 849 00:41:34,340 --> 00:41:38,220 або постійна символ * deliminator, роздільник для стислості, 850 00:41:38,220 --> 00:41:42,410 Все це робить, тим більше порушення Рядок у серії, що ми називаємо 851 00:41:42,410 --> 00:41:45,730 жетони, розділених певним значенням. 852 00:41:45,730 --> 00:42:03,340 Таким чином, в деякому розумінні, якби я, щоб дати Ви section.7.php, це рядок. 853 00:42:03,340 --> 00:42:09,520 >> Так що було б, якби я пройти в цій якості мого вул, мій символ * вул 854 00:42:09,520 --> 00:42:18,870 якщо мій deliminator був точка, все це буде зробити, це пошук через рядок. 855 00:42:18,870 --> 00:42:22,790 І в перший раз він бачить точку, було б просто повернутися до покажчика 856 00:42:22,790 --> 00:42:25,830 до останньої лексеме знайденого в рядку перед цим. 857 00:42:25,830 --> 00:42:27,230 Так вона буде йти прямо тут. 858 00:42:27,230 --> 00:42:30,580 >> І було б просто дати мені 7.php. 859 00:42:30,580 --> 00:42:34,070 І якби я називаю функціонувати ще раз, 860 00:42:34,070 --> 00:42:37,580 це дасть мені тільки .php. 861 00:42:37,580 --> 00:42:41,540 І так все це робить функція руйнується на велику рядок 862 00:42:41,540 --> 00:42:44,620 в невеликих рядків залежно на те, що ви шукаєте. 863 00:42:44,620 --> 00:42:46,670 >> І так, наприклад, в ваш погляд на функції 864 00:42:46,670 --> 00:42:49,895 якщо ви хочете, щоб подивитися на те, що деякі символи відбулося 865 00:42:49,895 --> 00:42:54,280 або якщо точки станеться або розширення відбудеться, Ця функція буде досить корисно. 866 00:42:54,280 --> 00:42:57,260 867 00:42:57,260 --> 00:42:59,010 Так. 868 00:42:59,010 --> 00:42:59,510 Не турбуйтеся. 869 00:42:59,510 --> 00:43:01,339 Це все be-- так, то, що трапилося? 870 00:43:01,339 --> 00:43:07,087 >> АУДИТОРІЯ: Таким чином, в першому рядку, якби ми використовували цей приклад, 871 00:43:07,087 --> 00:43:09,504 що б ми вставити в це? 872 00:43:09,504 --> 00:43:10,170 ANDI Пен: Так. 873 00:43:10,170 --> 00:43:13,000 874 00:43:13,000 --> 00:43:25,640 Ви просто називаєте strtok рядок кома роздільник. 875 00:43:25,640 --> 00:43:30,260 І рядок дорівнює section.7.php. 876 00:43:30,260 --> 00:43:35,244 І тоді ви роздільник може дорівнювати тільки крапка. 877 00:43:35,244 --> 00:43:36,654 >> АУДИТОРІЯ: ОК. 878 00:43:36,654 --> 00:43:39,010 >> ANDI Пен: Так. 879 00:43:39,010 --> 00:43:41,266 Ось так. 880 00:43:41,266 --> 00:43:43,890 Всі ці функції є достатньо схоже, коли ми йдемо через них. 881 00:43:43,890 --> 00:43:45,514 Вони просто роблять трохи різні речі. 882 00:43:45,514 --> 00:43:49,530 Але всі вони збираються зробити ваше життя набагато простіше. 883 00:43:49,530 --> 00:43:53,940 Друга функція, це один як супер, супер, супер важливо, 884 00:43:53,940 --> 00:43:58,254 це the-- затримати. 885 00:43:58,254 --> 00:44:07,560 886 00:44:07,560 --> 00:44:08,730 >> Ой. 887 00:44:08,730 --> 00:44:13,810 Strchr пошуки першого occurrence-- насправді, так. 888 00:44:13,810 --> 00:44:16,385 Strchr це функція, яка Я безумовно тільки пішов. 889 00:44:16,385 --> 00:44:18,260 Так ігнорувати те, що я сказав, для першої функції. 890 00:44:18,260 --> 00:44:20,980 Це насправді називається strchr. 891 00:44:20,980 --> 00:44:24,840 >> Так що тут буде трапилося, якщо Вам дали рядок у напівкоксу с, 892 00:44:24,840 --> 00:44:28,660 було б просто дати Ви все, що було. 893 00:44:28,660 --> 00:44:29,230 Так. 894 00:44:29,230 --> 00:44:33,700 Так що думайте про нього, як вул, яка це рядок, і CHR, як символ. 895 00:44:33,700 --> 00:44:38,621 Таким чином, всі ви намагаєтеся зробити, це пошук для якої символ в межах рядка. 896 00:44:38,621 --> 00:44:41,120 І так він шукає перший входження символу 897 00:44:41,120 --> 00:44:43,601 з в рядок рядок. 898 00:44:43,601 --> 00:44:46,463 >> АУДИТОРІЯ: [нерозбірливо]. 899 00:44:46,463 --> 00:44:48,380 >> ANDI Пен: Так. 900 00:44:48,380 --> 00:44:51,230 І потім, якщо він не знайшов це, він збирається повернутися NULL. 901 00:44:51,230 --> 00:44:54,313 Так-то, що буде дуже корисно для вас, хлопці роблять в PSET 902 00:44:54,313 --> 00:44:59,030 Якщо, скажімо, ви шукаєте розширення, як .docx для Слова 903 00:44:59,030 --> 00:45:04,740 документ або .pdf для PDF документа, Ви можете використовувати вигляд, щоб вона виглядала 904 00:45:04,740 --> 00:45:08,720 а все, що після цього кожен раз, коли ви бачите точку, вірно? 905 00:45:08,720 --> 00:45:11,880 І так досить багато, якщо ви запустити, що за допомогою функції, 906 00:45:11,880 --> 00:45:13,610 якщо вона повертає значення NULL, то ви знаєте, що це 907 00:45:13,610 --> 00:45:17,292 не знайдеш його точка, яка означає, що це явно не є допустимим розширення файлу. 908 00:45:17,292 --> 00:45:19,000 Або, якщо вона повертає то, то ви знаєте, 909 00:45:19,000 --> 00:45:21,940 він збирається повернутися Що б не насправді після розширення. 910 00:45:21,940 --> 00:45:24,190 Так що ті, з вас, хто був почав шукати через пошуку 911 00:45:24,190 --> 00:45:28,640 і розібрати, для цієї функції буде супер корисно. 912 00:45:28,640 --> 00:45:32,010 Таким чином, ми насправді відбувається щоб продемонструвати за допомогою цього. 913 00:45:32,010 --> 00:45:36,670 >> Чому не ви, хлопці, спробуйте написання Функція BOOL вирок символ * с, що 914 00:45:36,670 --> 00:45:39,610 просто повертає істину, якщо їй це Вирок і брехня в іншому випадку. 915 00:45:39,610 --> 00:45:44,110 916 00:45:44,110 --> 00:45:46,830 Так натякнути, що ви збираєтеся щоб, ймовірно, використовувати strchr. 917 00:45:46,830 --> 00:45:50,420 Або ви просто пошук в Рядок для певного характеру. 918 00:45:50,420 --> 00:45:54,950 І так у реченні, те, що відокремлює вирок 919 00:45:54,950 --> 00:45:57,510 від не пропозиції, те, що специфіка? 920 00:45:57,510 --> 00:45:58,260 АУДИТОРІЯ: Простір. 921 00:45:58,260 --> 00:45:59,343 ANDI Пен: Простір, вірно? 922 00:45:59,343 --> 00:46:03,354 І так, що ми, ймовірно, буде хочу зробити в цій функції тут? 923 00:46:03,354 --> 00:46:04,290 >> АУДИТОРІЯ: [нерозбірливо]. 924 00:46:04,290 --> 00:46:07,623 >> ANDI Пен: Ми збираємося, щоб strchr хочете Рядок для появи простору. 925 00:46:07,623 --> 00:46:11,330 Тому що, якщо вона повертає щось, то ми знаємо, що це має бути пропозиція. 926 00:46:11,330 --> 00:46:14,510 Це означає, що ми повинні мають місце в цьому рядку. 927 00:46:14,510 --> 00:46:17,660 >> Якщо немає місця, то ми знаємо, що, гей, думаю, це не рядок. 928 00:46:17,660 --> 00:46:20,060 Це, напевно, просто дуже довге слово. 929 00:46:20,060 --> 00:46:23,242 Тому я дам вам хлопці пару хвилин, щоб написати цю функцію. 930 00:46:23,242 --> 00:46:44,398 931 00:46:44,398 --> 00:46:45,874 Так. 932 00:46:45,874 --> 00:46:47,970 >> АУДИТОРІЯ: Ви отримуєте цей рядок від користувача? 933 00:46:47,970 --> 00:46:48,440 >> ANDI Пен: Так. 934 00:46:48,440 --> 00:46:49,565 Так що це просто функція. 935 00:46:49,565 --> 00:46:54,586 Отже, уявіть, всередині основної функції Ви вже have-- давайте тут. 936 00:46:54,586 --> 00:47:00,040 937 00:47:00,040 --> 00:47:00,540 ДОБРЕ. 938 00:47:00,540 --> 00:47:05,270 Так що я написав цю програму, де У мене є основної функції, де 939 00:47:05,270 --> 00:47:07,432 Я тільки що створили два рядки. 940 00:47:07,432 --> 00:47:09,890 Перший Привіт, мене звуть це Andi-- ясно, вирок. 941 00:47:09,890 --> 00:47:13,240 Мій другий просто Енді, явно не вирок. 942 00:47:13,240 --> 00:47:18,390 >> І так я біжу і тих, струни через цю функцію. 943 00:47:18,390 --> 00:47:20,540 Я хочу, щоб ви, хлопці, щоб написати холодний вирок. 944 00:47:20,540 --> 00:47:23,380 І я зберігати ці значення, а потім просто їх друку. 945 00:47:23,380 --> 00:47:26,549 Так що подумайте, що користувач збирається перейти в рядок. 946 00:47:26,549 --> 00:47:29,590 І тоді ви будете по суті з'ясувати, якщо ця пропозиція чи ні 947 00:47:29,590 --> 00:47:31,131 і повернутися істинним чи хибним, відповідно. 948 00:47:31,131 --> 00:48:41,850 949 00:48:41,850 --> 00:48:45,200 >> Якщо ви, хлопці, хочете, щоб дати великі пальці або голови вгору, кивком голови, 950 00:48:45,200 --> 00:48:49,080 хто-небудь готовий почати це, що було б добре. 951 00:48:49,080 --> 00:50:13,570 952 00:50:13,570 --> 00:50:15,200 Може бути, як ще 30 секунд? 953 00:50:15,200 --> 00:50:49,570 954 00:50:49,570 --> 00:50:50,070 Добре. 955 00:50:50,070 --> 00:50:52,870 Давайте подивимося, якщо ви можете спробувати писати цю функцію. 956 00:50:52,870 --> 00:50:57,480 >> Так псевдо coding-- Я просто хочу, щоб вид пройти через це прямо зараз. 957 00:50:57,480 --> 00:51:00,570 Досить багато, ми знаємо, що функція, яку ми повинні використовувати. 958 00:51:00,570 --> 00:51:04,390 Ми збираємося називати цю функцію на наш рядок і пошук простору. 959 00:51:04,390 --> 00:51:08,682 Якщо вона повертає щось, то ми повинні знаю, що, очевидно, це вирок. 960 00:51:08,682 --> 00:51:09,640 Тому що прогалини. 961 00:51:09,640 --> 00:51:10,930 Тоді ми йдемо, щоб повернутися правда. 962 00:51:10,930 --> 00:51:12,310 В іншому випадку, ми збираємося повернутися помилковим. 963 00:51:12,310 --> 00:51:14,393 Хто-небудь хоче, щоб дати мені перша лінія коду 964 00:51:14,393 --> 00:51:16,890 що ми насправді відбувається використовувати, щоб написати це? 965 00:51:16,890 --> 00:51:19,680 Це насправді важка рядок коду, а також. 966 00:51:19,680 --> 00:51:21,026 Так. 967 00:51:21,026 --> 00:51:28,942 >> АУДИТОРІЯ: Якщо strtok S-- 968 00:51:28,942 --> 00:51:29,900 ANDI Пен: Просто strchr. 969 00:51:29,900 --> 00:51:35,354 АУДИТОРІЯ: [Реле ГОЛОСИ] простір не дорівнює нулю. 970 00:51:35,354 --> 00:51:38,270 971 00:51:38,270 --> 00:51:40,710 >> ANDI Пен: Прохолодний. 972 00:51:40,710 --> 00:51:41,470 Абсолютно вірно. 973 00:51:41,470 --> 00:51:43,200 Всі розуміють, що першу лінію? 974 00:51:43,200 --> 00:51:46,110 Ми збираємося називати strstr, яка є функцією, що шукає 975 00:51:46,110 --> 00:51:51,830 рядок з для напівкоксу простору. 976 00:51:51,830 --> 00:51:56,010 І якщо він знаходить його, він збирається повертає вказівник на, де це. 977 00:51:56,010 --> 00:51:58,500 >> Якщо він не знайде його, він збирається повернутися NULL. 978 00:51:58,500 --> 00:52:02,530 Так що, якщо вона повертає нічого, крім NULL, то ми знаємо, що знайшов місце. 979 00:52:02,530 --> 00:52:03,553 Чи має це сенс? 980 00:52:03,553 --> 00:52:04,090 Прохолодний. 981 00:52:04,090 --> 00:52:04,590 Добре. 982 00:52:04,590 --> 00:52:08,246 Так що, якщо ми знаємо, що це знайшов простір, те, що ми хочемо зробити? 983 00:52:08,246 --> 00:52:09,162 АУДИТОРІЯ: Повернутися правда. 984 00:52:09,162 --> 00:52:09,787 ANDI Пен: Так. 985 00:52:09,787 --> 00:52:11,940 Повернутися правда. 986 00:52:11,940 --> 00:52:15,034 А потім, хтось хоче закінчити функцію для мене? 987 00:52:15,034 --> 00:52:16,300 Так. 988 00:52:16,300 --> 00:52:19,720 В іншому випадку, просто так. 989 00:52:19,720 --> 00:52:20,780 І спробуйте скомпілювати цей. 990 00:52:20,780 --> 00:52:26,071 991 00:52:26,071 --> 00:52:28,000 >> Так. 992 00:52:28,000 --> 00:52:33,099 Отже, як ви, хлопці, можете бачити з виходи, пам'ятайте Booleans в C 993 00:52:33,099 --> 00:52:34,390 завжди виражаються в двійковій системі. 994 00:52:34,390 --> 00:52:35,100 1 вірно. 995 00:52:35,100 --> 00:52:36,350 0 ложно. 996 00:52:36,350 --> 00:52:39,720 >> Якби ми були запустити цей функція на рядок, яка однією 997 00:52:39,720 --> 00:52:42,900 є Привіт, Andi-- мене звуть Очевидно, sentence-- результат 998 00:52:42,900 --> 00:52:45,700 роздрукувати 1 це вірно. 999 00:52:45,700 --> 00:52:48,420 Другий, який є тільки слово, результат друкується 1000 00:52:48,420 --> 00:52:50,630 0, що невірно. 1001 00:52:50,630 --> 00:52:54,820 Все ясно, вид, як ця функція була написана? 1002 00:52:54,820 --> 00:52:55,800 Так. 1003 00:52:55,800 --> 00:52:59,770 >> АУДИТОРІЯ: Може ми також робимо, а не не дорівнює немає, так само дорівнює 0, 1004 00:52:59,770 --> 00:53:03,677 так, що він дорівнює? 1005 00:53:03,677 --> 00:53:04,260 ANDI PENG: Ні 1006 00:53:04,260 --> 00:53:07,480 Тому strchr функція. 1007 00:53:07,480 --> 00:53:09,940 Я збираюся повернутися до цієї. 1008 00:53:09,940 --> 00:53:14,624 Так що тип повертається нашої функції strchr? 1009 00:53:14,624 --> 00:53:15,332 АУДИТОРІЯ: О, добре. 1010 00:53:15,332 --> 00:53:15,800 Або NULL. 1011 00:53:15,800 --> 00:53:16,466 >> ANDI Пен: Так. 1012 00:53:16,466 --> 00:53:20,890 Це символ *, який говорить мені, що все, що ця функція буде повертати, 1013 00:53:20,890 --> 00:53:22,090 це буде покажчик. 1014 00:53:22,090 --> 00:53:24,860 Або покажчик буде вказуючи, де він його знайшов, 1015 00:53:24,860 --> 00:53:27,550 або це збирається повернутися покажчик на NULL. 1016 00:53:27,550 --> 00:53:30,930 У будь-якому обставині, він збирається повернути покажчик на щось. 1017 00:53:30,930 --> 00:53:34,354 >> І тому, якщо ви були прирівняти це одно, одно, 0, 1018 00:53:34,354 --> 00:53:36,020 Ви збираєтеся отримати помилку компіляції. 1019 00:53:36,020 --> 00:53:37,645 Тому що це буде повертати покажчик. 1020 00:53:37,645 --> 00:53:40,240 І ви збираєтеся, щоб спробувати порівняти покажчик на ціле число. 1021 00:53:40,240 --> 00:53:42,515 І комп'ютер не сподобається це. 1022 00:53:42,515 --> 00:53:45,630 Так, саме так. 1023 00:53:45,630 --> 00:53:46,540 Прохолодний. 1024 00:53:46,540 --> 00:53:47,525 Все добре? 1025 00:53:47,525 --> 00:53:55,770 1026 00:53:55,770 --> 00:53:59,770 >> А по-друге, ми збираємося піти по функції називається strstr. 1027 00:53:59,770 --> 00:54:02,020 Не турбуйтеся, якщо ці функції плутаю. 1028 00:54:02,020 --> 00:54:03,750 Вони плутаєш мене. 1029 00:54:03,750 --> 00:54:07,250 Таким чином, ви, хлопці, могли бачити, всі вони звучать майже так само. 1030 00:54:07,250 --> 00:54:10,400 Просто, коли ви заплуталися, підтягнути string.h бібліотеку. 1031 00:54:10,400 --> 00:54:13,290 І ви, хлопці, можете сортувати через які, який. 1032 00:54:13,290 --> 00:54:18,910 >> Так strstr, все, що робить пошук рядок для всієї іншого рядка. 1033 00:54:18,910 --> 00:54:21,980 То де strchr всього пошуки для одного символу, 1034 00:54:21,980 --> 00:54:24,090 strstr пошуки всього рядка. 1035 00:54:24,090 --> 00:54:30,440 Так що я хотів подивитися, я не знаєте, Привіт, мене звуть Енді. 1036 00:54:30,440 --> 00:54:32,490 І ім'я мого кращого друга також Енді. 1037 00:54:32,490 --> 00:54:37,180 >> Якби я хотів, щоб шукати в цьому вирок для всієї словом Andi, 1038 00:54:37,180 --> 00:54:39,930 мій голки б все, що ви шукаєте. 1039 00:54:39,930 --> 00:54:43,440 І ваш стозі сіна б то не було Ви шукаєте для нього в. 1040 00:54:43,440 --> 00:54:47,050 Так що якщо ви шукаєте конкретне слово в реченні, 1041 00:54:47,050 --> 00:54:48,800 що слово буде ваш голку. 1042 00:54:48,800 --> 00:54:51,397 І тоді сама пропозиція буде ваш стіг. 1043 00:54:51,397 --> 00:54:53,230 І так він просто шукає перша поява 1044 00:54:53,230 --> 00:54:55,063 струнного голки в рядку стозі сіна. 1045 00:54:55,063 --> 00:54:57,140 Вона повертає покажчик на перше входження. 1046 00:54:57,140 --> 00:55:00,510 Крім цього, пам'ятайте, в цьому випадку, це Перша поява всього рядка 1047 00:55:00,510 --> 00:55:02,510 що ви шукаєте для, а не просто символ. 1048 00:55:02,510 --> 00:55:04,676 >> І таким чином, це майже Те ж саме, що і функція 1049 00:55:04,676 --> 00:55:09,100 ми тільки що зробили, тільки з трохи більш специфіка. 1050 00:55:09,100 --> 00:55:12,730 Тому що ви шукаєте більше, ніж просто один символ. 1051 00:55:12,730 --> 00:55:16,310 І використання точно такий же як той, який ми тільки що зробили. 1052 00:55:16,310 --> 00:55:18,070 Все в порядку з цим? 1053 00:55:18,070 --> 00:55:20,250 ДОБРЕ. 1054 00:55:20,250 --> 00:55:23,560 >> Остання, яку ми збираємося піти більше це strrchr, що ні 1055 00:55:23,560 --> 00:55:26,320 плутати з strstr або strchr. 1056 00:55:26,320 --> 00:55:27,890 strrchr має додаткову г в там. 1057 00:55:27,890 --> 00:55:29,140 Будьте обережні, коли ви друкуєте. 1058 00:55:29,140 --> 00:55:33,851 Ви можете знайти собі в тому числі додаткова г або не включаючи г, 1059 00:55:33,851 --> 00:55:35,850 а потім ваша функція виходить не збирається працювати. 1060 00:55:35,850 --> 00:55:37,183 І ви будете в замішанні. 1061 00:55:37,183 --> 00:55:40,150 Будьте обережні, що ви написання всі ці функції правильно. 1062 00:55:40,150 --> 00:55:43,770 >> Так strrchr є точним Те ж саме, як strchr 1063 00:55:43,770 --> 00:55:47,480 за винятком того, він шукає не перший входження зазначеного символу, 1064 00:55:47,480 --> 00:55:49,350 а остання поява. 1065 00:55:49,350 --> 00:55:52,800 І так, в цьому сенсі, це майже точно такий же. 1066 00:55:52,800 --> 00:55:54,620 Але замість переміщення вперед в рядку, 1067 00:55:54,620 --> 00:55:57,230 Ви збираєтеся рухатися назад у вигляді рядка. 1068 00:55:57,230 --> 00:56:00,510 Точне ж саме, ви просто пошук в іншому порядку. 1069 00:56:00,510 --> 00:56:04,690 >> І так це може бути супер, супер корисно для вашого пошуку 1070 00:56:04,690 --> 00:56:07,490 Функція, перший Функція на PSET. 1071 00:56:07,490 --> 00:56:12,710 Давайте уявимо, що нам потрібно написати функція пустот розширення, в якому ми 1072 00:56:12,710 --> 00:56:17,850 пройти постійним сЬаг ім'я * файл, просто рядок, ім'я файлу, 1073 00:56:17,850 --> 00:56:21,370 який приймає в цьому імені і виводить з розширення цього файлу. 1074 00:56:21,370 --> 00:56:26,520 Так, наприклад, якби я перейти в рядок pset7.zip, 1075 00:56:26,520 --> 00:56:30,004 це буде просто роздрукувати розширення, яке .zip. 1076 00:56:30,004 --> 00:56:31,920 І це буде працювати для якої-небудь розширення, 1077 00:56:31,920 --> 00:56:38,290 .docx для Word або .pdf для PDF файл або .html для HTML файлу. 1078 00:56:38,290 --> 00:56:40,425 Досить багато, написати функція, яка може зробити це. 1079 00:56:40,425 --> 00:56:42,300 Я насправді відбувається в перейти до IDE. 1080 00:56:42,300 --> 00:56:54,560 1081 00:56:54,560 --> 00:56:56,740 Це не load-- ми йдемо. 1082 00:56:56,740 --> 00:57:00,990 >> Таким чином, все, що я зробив тут створив символ *, перший струнний, 1083 00:57:00,990 --> 00:57:01,930 називається pset7.zip. 1084 00:57:01,930 --> 00:57:04,530 Я збираюся збільшити. 1085 00:57:04,530 --> 00:57:08,520 Я створив другого рядка називається finalpaper.docx. 1086 00:57:08,520 --> 00:57:12,649 І напишіть мені, що, коли функція називається збирається просто роздрукувати 1087 00:57:12,649 --> 00:57:13,690 розширення імен файлів. 1088 00:57:13,690 --> 00:57:16,702 1089 00:57:16,702 --> 00:57:19,660 Може бути, взяти пару хвилин, щоб думати, про те, як ви збираєтеся це зробити. 1090 00:57:19,660 --> 00:57:22,510 Трохи більш складним ніж останній, 1091 00:57:22,510 --> 00:57:24,770 але використання майже точно так само. 1092 00:57:24,770 --> 00:57:29,670 1093 00:57:29,670 --> 00:57:30,170 Так. 1094 00:57:30,170 --> 00:57:37,540 Так що пишіть розширення функцію називають що, якщо я даю вам ім'я файлу, 1095 00:57:37,540 --> 00:57:41,340 якби я був, щоб дати вам pset7.zip-- I Ви хочете, щоб роздрукувати тільки .zip. 1096 00:57:41,340 --> 00:57:45,040 1097 00:57:45,040 --> 00:57:49,890 Якщо я даю вам подобається finalpaper.docx, просто роздрукувати .docx, 1098 00:57:49,890 --> 00:57:51,538 тільки розширення файлу який. 1099 00:57:51,538 --> 00:59:03,720 1100 00:59:03,720 --> 00:59:07,790 >> Це насправді тільки займає два рядки коду. 1101 00:59:07,790 --> 00:59:10,692 Тому постарайтеся, щоб побачити, якщо ви може, можливо, зробити це в цьому. 1102 00:59:10,692 --> 00:59:12,400 Насправді, це тільки займає один рядок коду. 1103 00:59:12,400 --> 00:59:14,074 Але дві лінії, ймовірно, більше стандартного. 1104 00:59:14,074 --> 00:59:20,408 1105 00:59:20,408 --> 00:59:22,574 Яку функцію ми, ймовірно, захоче подзвонити? 1106 00:59:22,574 --> 00:59:25,286 1107 00:59:25,286 --> 00:59:26,260 >> АУДИТОРІЯ: strrchr. 1108 00:59:26,260 --> 00:59:27,343 >> ANDI Пен: strrchr, право. 1109 00:59:27,343 --> 00:59:29,570 Тому що ми шукаємо від правої зліва. 1110 00:59:29,570 --> 00:59:32,107 1111 00:59:32,107 --> 00:59:33,940 Я не дати вам, хлопці, приклад, як це, 1112 00:59:33,940 --> 00:59:38,870 але якщо я дав вам приклад, як у www.apple.com і я просто хотів 1113 00:59:38,870 --> 00:59:43,005 .com, це було б прикладом, де Ви хочете, щоб викликати останній екземпляр 1114 00:59:43,005 --> 00:59:44,630 періоду, а не перший, чи не так? 1115 00:59:44,630 --> 00:59:47,470 Якби ви були виклику strchr, його б вже дав вам Apple.com. 1116 00:59:47,470 --> 00:59:49,966 >> Якщо ви назвали strrchr, його дав би вам .com. 1117 00:59:49,966 --> 00:59:53,062 І так що будьте обережні, на якому ways-- в моєму прикладі, 1118 00:59:53,062 --> 00:59:55,520 Ви могли б, ймовірно, могли б тільки що написав його, використовуючи strchr, 1119 00:59:55,520 --> 00:59:57,130 так як є тільки одна точка. 1120 00:59:57,130 --> 00:59:59,790 Але в інших випадках, які не можуть бути так. 1121 00:59:59,790 --> 01:00:04,960 І так завжди намагаюся проектувати код, так що that-- да? 1122 01:00:04,960 --> 01:00:07,365 >> АУДИТОРІЯ: Таким чином, в Наприклад, ви тільки що сказали ,, 1123 01:00:07,365 --> 01:00:11,760 коли ви strrchr це було б дати вам .com або просто прийти? 1124 01:00:11,760 --> 01:00:13,960 >> ANDI Пен: Це дасть вам .com. 1125 01:00:13,960 --> 01:00:14,794 >> АУДИТОРІЯ: ОК. 1126 01:00:14,794 --> 01:00:15,460 ANDI Пен: Так. 1127 01:00:15,460 --> 01:00:18,090 1128 01:00:18,090 --> 01:00:19,744 Це вказує, де він її знайшов. 1129 01:00:19,744 --> 01:00:20,244 Так. 1130 01:00:20,244 --> 01:00:24,120 1131 01:00:24,120 --> 01:00:25,188 30 секунд, може бути? 1132 01:00:25,188 --> 01:00:25,688 Так. 1133 01:00:25,688 --> 01:00:56,640 1134 01:00:56,640 --> 01:00:58,500 Все добре або, може бути, трохи більше часу? 1135 01:00:58,500 --> 01:01:01,057 1136 01:01:01,057 --> 01:01:01,640 Показати рук? 1137 01:01:01,640 --> 01:01:02,320 Показати керівників? 1138 01:01:02,320 --> 01:01:04,801 1139 01:01:04,801 --> 01:01:05,300 Прохолодний. 1140 01:01:05,300 --> 01:01:07,924 Хто-небудь хоче дати мені перше рядок коду для цієї програми? 1141 01:01:07,924 --> 01:01:11,861 1142 01:01:11,861 --> 01:01:12,777 АУДИТОРІЯ: [нерозбірливо]. 1143 01:01:12,777 --> 01:01:16,190 1144 01:01:16,190 --> 01:01:20,160 >> ANDI Пен: Отже, перш за все, давайте, можливо, розірвати це вниз. 1145 01:01:20,160 --> 01:01:24,370 Так що тип повертається strrchr? 1146 01:01:24,370 --> 01:01:26,150 Давайте повернемося. 1147 01:01:26,150 --> 01:01:29,015 strrchr, що тип повертається? 1148 01:01:29,015 --> 01:01:29,640 АУДИТОРІЯ: Чар * 1149 01:01:29,640 --> 01:01:31,270 ANDI Пен: Це символ *, вірно? 1150 01:01:31,270 --> 01:01:35,760 Це означає, що ви, ймовірно, хочуть створити ще один символ * у вигляді 1151 01:01:35,760 --> 01:01:40,400 магазину, коли це повернутися до, чи не так? 1152 01:01:40,400 --> 01:01:43,200 Тому що, якщо ви телефонуєте функція strrchr, 1153 01:01:43,200 --> 01:01:47,030 він збирається дати вам покажчик на там, де він знайшов, що останній період, 1154 01:01:47,030 --> 01:01:47,580 вірно? 1155 01:01:47,580 --> 01:01:49,913 >> Але ви будете хотіти, щоб зберігати що десь, вірно? 1156 01:01:49,913 --> 01:01:52,612 І так як ми код це в нашій програмі? 1157 01:01:52,612 --> 01:01:54,320 АУДИТОРІЯ: Ви робите напівкокс * [нерозбірливо]. 1158 01:01:54,320 --> 01:01:55,240 ANDI Пен: Так. 1159 01:01:55,240 --> 01:01:57,120 АУДИТОРІЯ: [нерозбірливо]. 1160 01:01:57,120 --> 01:01:58,000 ANDI Пен: strrchr. 1161 01:01:58,000 --> 01:01:58,390 Так. 1162 01:01:58,390 --> 01:01:59,306 О, пропустив R є. 1163 01:01:59,306 --> 01:02:02,877 АУДИТОРІЯ: Файл [нерозбірливо]. 1164 01:02:02,877 --> 01:02:03,376 Що це? 1165 01:02:03,376 --> 01:02:04,420 О, це просто S. 1166 01:02:04,420 --> 01:02:04,940 >> ANDI Пен: О, це просто S. 1167 01:02:04,940 --> 01:02:05,610 Так, вибачте. 1168 01:02:05,610 --> 01:02:06,330 Моє ліжко. 1169 01:02:06,330 --> 01:02:08,370 Приклади не збігаються. 1170 01:02:08,370 --> 01:02:12,130 >> АУДИТОРІЯ: А потім крапка. 1171 01:02:12,130 --> 01:02:13,970 >> ANDI Пен: Так. 1172 01:02:13,970 --> 01:02:16,570 Будьте обережні, коли ви, хлопці, are-- тут, дозвольте мені збільшити. 1173 01:02:16,570 --> 01:02:22,355 1174 01:02:22,355 --> 01:02:24,400 Там ми йдемо. 1175 01:02:24,400 --> 01:02:26,770 Будьте обережні, коли ви, хлопці, набираєте, особливо коли 1176 01:02:26,770 --> 01:02:27,920 ви робите тільки символ. 1177 01:02:27,920 --> 01:02:32,480 Це дійсно легко випадково тільки зробити подвійні лапки, а не один. 1178 01:02:32,480 --> 01:02:35,212 >> Це не буде працювати. 1179 01:02:35,212 --> 01:02:36,670 Ваш компілятор буде скаржитися. 1180 01:02:36,670 --> 01:02:38,790 І ваша функція є просто не буде працювати. 1181 01:02:38,790 --> 01:02:40,540 І тому будьте обережні при ви робите речі 1182 01:02:40,540 --> 01:02:42,622 з символів, що це одиничні лапки. 1183 01:02:42,622 --> 01:02:44,830 І так робить цю лінію Код сенсу для всіх? 1184 01:02:44,830 --> 01:02:46,810 Ми створюємо символ * покажчик. 1185 01:02:46,810 --> 01:02:50,310 Тому strrchr повертається щось типу покажчик. 1186 01:02:50,310 --> 01:02:53,440 >> І таким чином ми збираємося називати strchr на S, який є рядком, файл 1187 01:02:53,440 --> 01:02:55,140 ім'я, що ми передаємо в. 1188 01:02:55,140 --> 01:02:59,750 І ми шукаємо останній Примірник період, який 1189 01:02:59,750 --> 01:03:02,200 тільки одинарні лапки точка одинарні лапки. 1190 01:03:02,200 --> 01:03:02,700 Так. 1191 01:03:02,700 --> 01:03:05,180 >> АУДИТОРІЯ: Коли ми використовуємо подвійні лапки і коли ми використовуємо одинарні лапки? 1192 01:03:05,180 --> 01:03:05,320 >> ANDI Пен: Так. 1193 01:03:05,320 --> 01:03:07,180 Так подвійні лапки завжди, коли вам 1194 01:03:07,180 --> 01:03:10,120 є рядок більше одного. 1195 01:03:10,120 --> 01:03:13,070 Так що, якщо ви робите strstr, який є той, який вам 1196 01:03:13,070 --> 01:03:16,320 пошук рядок для рядка, вам проходитиме у подвійні лапки. 1197 01:03:16,320 --> 01:03:18,070 Але в будь-який час, це просто один символ, 1198 01:03:18,070 --> 01:03:19,870 Ви хочете, щоб зробити одиничні лапки. 1199 01:03:19,870 --> 01:03:22,880 >> Це гарна річ, щоб тримати в голові. 1200 01:03:22,880 --> 01:03:25,864 Так що тепер у нас є наші покажчик, що ми з ним робити? 1201 01:03:25,864 --> 01:03:27,780 Я прошу вас, хлопці, печать його, вірно? 1202 01:03:27,780 --> 01:03:30,940 Так [нерозбірливо], Ви хочете, щоб дати мені рядки коду? 1203 01:03:30,940 --> 01:03:31,780 >> АУДИТОРІЯ: printf-- 1204 01:03:31,780 --> 01:03:32,446 >> ANDI Пен: Так. 1205 01:03:32,446 --> 01:03:35,344 1206 01:03:35,344 --> 01:03:36,843 АУДИТОРІЯ: -Ви повинні тримач місце. 1207 01:03:36,843 --> 01:03:37,340 ANDI Пен: Так. 1208 01:03:37,340 --> 01:03:38,334 АУДИТОРІЯ: Роздрукувати тримач місце. 1209 01:03:38,334 --> 01:03:40,322 Я не знаю, що місце Тримач але сенсу. 1210 01:03:40,322 --> 01:03:40,819 >> ДОБРЕ. 1211 01:03:40,819 --> 01:03:42,027 Давайте пропустити що зараз, то. 1212 01:03:42,027 --> 01:03:44,556 АУДИТОРІЯ: А потім comma-- 1213 01:03:44,556 --> 01:03:45,720 >> ANDI Пен: Покажчик, вірно? 1214 01:03:45,720 --> 01:03:47,970 >> АУДИТОРІЯ: Покажчик, так. 1215 01:03:47,970 --> 01:03:51,140 >> ANDI Пен: Так свого роду питання з підступом, має справу з покажчиками і рядками 1216 01:03:51,140 --> 01:03:53,130 що ми начебто говорили про вже. 1217 01:03:53,130 --> 01:03:57,766 Які місця держателя зробити ми потрібно для покажчика для напівкоксу *? 1218 01:03:57,766 --> 01:03:59,574 >> АУДИТОРІЯ: [нерозбірливо]. 1219 01:03:59,574 --> 01:04:00,240 ANDI Пен: Так. 1220 01:04:00,240 --> 01:04:02,522 Це простіше, ніж ви, хлопці, думаю, що це. 1221 01:04:02,522 --> 01:04:03,230 АУДИТОРІЯ: String? 1222 01:04:03,230 --> 01:04:04,730 ANDI Пен: Це просто рядок, точно. 1223 01:04:04,730 --> 01:04:06,595 Тому що пам'ятаю рядки насправді не існує. 1224 01:04:06,595 --> 01:04:09,430 Напівкоксу * є точним Те ж саме у вигляді рядка. 1225 01:04:09,430 --> 01:04:14,461 І так насправді це S є те, що мали використовуватися всі разом. 1226 01:04:14,461 --> 01:04:14,960 ДОБРЕ. 1227 01:04:14,960 --> 01:04:17,810 >> Давайте подивимося, якщо ми можемо спробувати запустити цей. 1228 01:04:17,810 --> 01:04:19,450 Давайте зробимо розширення виробництва. 1229 01:04:19,450 --> 01:04:22,710 1230 01:04:22,710 --> 01:04:23,396 Прохолодний. 1231 01:04:23,396 --> 01:04:28,830 Ви, хлопці, подивитися, як я пройшов в psset7.zip і finalpaper.docx, 1232 01:04:28,830 --> 01:04:32,500 і він просто друкує .zip-і .docx? 1233 01:04:32,500 --> 01:04:34,150 Мати сенс? 1234 01:04:34,150 --> 01:04:36,660 >> ОК Тому я думаю, у вашому Подивіться Функція в PSET ви знаходитесь 1235 01:04:36,660 --> 01:04:41,050 будуть питати, якщо Рядок має певну кінцівку, 1236 01:04:41,050 --> 01:04:42,800 Ви повинні дати певний код помилки. 1237 01:04:42,800 --> 01:04:44,820 І так це буде досить жахливо. 1238 01:04:44,820 --> 01:04:47,350 Тому що, якщо ви можете з'ясувати з того, що розширення, 1239 01:04:47,350 --> 01:04:49,810 Потім ви можете порівняти, що розширення, щоб побачити, якщо він збігається 1240 01:04:49,810 --> 01:04:51,251 з певним розширенням. 1241 01:04:51,251 --> 01:04:53,250 І тоді ви можете повернутися повідомлення про помилку, вірно? 1242 01:04:53,250 --> 01:04:53,860 Так. 1243 01:04:53,860 --> 01:04:55,370 >> АУДИТОРІЯ: Таким чином, ми не повинні додати 1 або що-небудь? 1244 01:04:55,370 --> 01:04:56,530 Покажчик піде the-- 1245 01:04:56,530 --> 01:04:56,660 >> ANDI Пен: Ні. 1246 01:04:56,660 --> 01:04:57,530 >> АУДИТОРІЯ: --point після нього. 1247 01:04:57,530 --> 01:04:58,196 >> ANDI Пен: Так. 1248 01:04:58,196 --> 01:05:00,650 Це вказує точно на де поява було. 1249 01:05:00,650 --> 01:05:04,010 Так, наприклад, тут, ми шукаючи період. 1250 01:05:04,010 --> 01:05:06,597 Так що це збирається повернутися покажчик на цей період. 1251 01:05:06,597 --> 01:05:08,930 І тоді це буде друкувати з починаючи період. 1252 01:05:08,930 --> 01:05:10,260 >> Таким чином, ви не повинні додати 1. 1253 01:05:10,260 --> 01:05:15,000 Хоча, це абсолютно нормально, щоб, якщо ви коли-небудь не впевнені, просто вид 1254 01:05:15,000 --> 01:05:16,070 з перевірити його самостійно. 1255 01:05:16,070 --> 01:05:17,590 Побудувати приклад програми. 1256 01:05:17,590 --> 01:05:20,240 Перевірте це самі і побачити, де це друк. 1257 01:05:20,240 --> 01:05:23,380 Це також не поганий спосіб зробити це. 1258 01:05:23,380 --> 01:05:26,040 >> Прохолодний. 1259 01:05:26,040 --> 01:05:28,880 І це значною мірою все Я був для вас, хлопці сьогодні. 1260 01:05:28,880 --> 01:05:31,440 1261 01:05:31,440 --> 01:05:33,300 Сьогодні ми зробили багато Pset речі. 1262 01:05:33,300 --> 01:05:35,720 Тому, коли є сумніви, як Я сказав, завжди шукати 1263 01:05:35,720 --> 01:05:37,620 string.h бібліотека для цього PSET. 1264 01:05:37,620 --> 01:05:40,370 Там буде багато функція в там, що може бути корисно. 1265 01:05:40,370 --> 01:05:41,300 Деякі з них не може бути корисним. 1266 01:05:41,300 --> 01:05:42,133 Я не знаю. 1267 01:05:42,133 --> 01:05:44,370 Уейд через нього, є ціла купа з них. 1268 01:05:44,370 --> 01:05:49,100 strstr, strchr, strrchr є супер, супер корисно, а також 1269 01:05:49,100 --> 01:05:52,080 в strcpys і strcasecmps що ми вже використали. 1270 01:05:52,080 --> 01:05:56,510 >> Це просто багато возитися з струни, визначення, якщо вони рівні, 1271 01:05:56,510 --> 01:05:59,960 одержувати матеріал з рядків і будучи в змозі правильно відкривати файли. 1272 01:05:59,960 --> 01:06:02,252 Це багато файлів I / O. PSET насправді не так вже й погано. 1273 01:06:02,252 --> 01:06:04,210 Ви збираєтеся взяти на це дивитися, завантажити його, 1274 01:06:04,210 --> 01:06:05,590 і побачити цілу купу коду. 1275 01:06:05,590 --> 01:06:09,220 Не турбуйтеся, код, який ви насправді писати це зовсім не погано. 1276 01:06:09,220 --> 01:06:12,870 Якщо хто має проблеми з їх Сервер, приходьте до мене після розділу. 1277 01:06:12,870 --> 01:06:16,040 >> Вибачаюсь ще раз, що ні чого цукерки Хеллоуїн. 1278 01:06:16,040 --> 01:06:18,790 Я не знаю, що зі мною трапилося. 1279 01:06:18,790 --> 01:06:20,800 Але у нас буде подвійний цукерки в наступний раз. 1280 01:06:20,800 --> 01:06:25,620 І удачі у вашому PSET на цьому тижні. 1281 01:06:25,620 --> 01:06:27,170 Так. 1282 01:06:27,170 --> 01:06:28,722