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 да 03: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