1 00:00:00,000 --> 00:00:05,410 2 00:00:05,410 --> 00:00:08,770 >> ANDI PENG: Kami ay halos sa lahat ng mga psets. 3 00:00:08,770 --> 00:00:12,080 Sa katunayan, hindi namin sa pamamagitan ng mayorya sa mga pinakamahirap na psets. 4 00:00:12,080 --> 00:00:14,350 Kaya hindi namin talagang lamang pagpunta sa uri ng simoy 5 00:00:14,350 --> 00:00:16,050 sa pamamagitan ng susunod na dalawang linggo. 6 00:00:16,050 --> 00:00:19,520 >> Kami ay pagpunta sa simulan ang pakikipag-usap tungkol sa aming huling proyekto, ang mga kaganapan pagdating up 7 00:00:19,520 --> 00:00:21,320 sa susunod na mga linggo. 8 00:00:21,320 --> 00:00:23,825 At ang buhay ay magiging madali. 9 00:00:23,825 --> 00:00:26,510 10 00:00:26,510 --> 00:00:27,680 Kaya hindi masyadong maraming ngayon. 11 00:00:27,680 --> 00:00:30,280 >> Sana, talagang amihan sa pamamagitan ng mga agenda para sa araw na ito, 12 00:00:30,280 --> 00:00:33,400 at pagkatapos ay sa labas ng dito kasama ang ilang mga oras na matitira. 13 00:00:33,400 --> 00:00:36,210 Gayundin, nais kong humingi ng paumanhin para sa kakulangan ng kendi ngayon. 14 00:00:36,210 --> 00:00:37,030 Hindi ko alam kung bakit. 15 00:00:37,030 --> 00:00:40,520 Ngunit sa linggo nangungunang up Halloween, Gusto ko kalimutan kendi. 16 00:00:40,520 --> 00:00:43,290 >> Kaya ako talagang lamang ng isang malawak na pagkabigo sa iyo sa ngayon. 17 00:00:43,290 --> 00:00:47,050 Dahil tandaan ako literal kendi para sa bawat solong klase, ngunit Halloween. 18 00:00:47,050 --> 00:00:49,345 Subalit sa susunod na linggo, dadalhin ko double ang halaga ng kendi 19 00:00:49,345 --> 00:00:50,720 upang gumawa ng up para sa na, ang lahat ng para sa iyo. 20 00:00:50,720 --> 00:00:53,260 Makikita ito ay mahusay. 21 00:00:53,260 --> 00:00:56,690 >> Kaya ako ay may isang pares ng mga anunsyo tungkol sa ilang mga scheduling. 22 00:00:56,690 --> 00:00:59,520 Mayroon akong ilang mga isyu scheduling. 23 00:00:59,520 --> 00:01:02,150 Pagkatapos kami ay pagpunta sa ilipat sa makipag-usap tungkol sa kung ano ang tinatawag na chmod. 24 00:01:02,150 --> 00:01:05,980 Kami ay pagpunta sa makipag-usap tungkol mabilis na TCP / IP HTTP. 25 00:01:05,980 --> 00:01:09,770 >> At pagkatapos kami ay pagpunta sa code ng aming sariling website gamit ang HTML at CSS. 26 00:01:09,770 --> 00:01:13,030 At pagkatapos ay kukunin ko na talagang umalis siguro tulad ng 20 minuto upang makipag-usap tungkol pset6. 27 00:01:13,030 --> 00:01:16,550 Dahil pset6 ay talagang isang pulutong ng mga bagay-bagay na na namin nakita bago, 28 00:01:16,550 --> 00:01:19,090 ngunit nais ko upang i-refresh ang ilan sa mga konseptong iyon 29 00:01:19,090 --> 00:01:22,140 pati na rin ang magturo sa isang pares ng mga bagong pag-andar. 30 00:01:22,140 --> 00:01:23,110 >> Cool. 31 00:01:23,110 --> 00:01:25,440 Kaya una sa lahat, welcome back mula sa break. 32 00:01:25,440 --> 00:01:27,410 Umaasa ako na kayo pahinga ay kasiya-siya. 33 00:01:27,410 --> 00:01:29,695 Gusto mo gawin mo para sa break? 34 00:01:29,695 --> 00:01:30,820 Madla: Napunta sa New York. 35 00:01:30,820 --> 00:01:32,030 ANDI PENG: Ikaw ay napunta sa New York? 36 00:01:32,030 --> 00:01:33,738 Sa tingin ko half aming paaralan nagpunta sa New York. 37 00:01:33,738 --> 00:01:34,740 Ito ay ang lahat ng karapatan. 38 00:01:34,740 --> 00:01:38,250 Ako na ginugol sa karamihan ng aking pahinga laging nakaupo sa kama Netflixing. 39 00:01:38,250 --> 00:01:39,760 At ito ay isang magandang panahon. 40 00:01:39,760 --> 00:01:43,450 >> Ngunit kami ngayon pabalik, pabalik sa session, bumalik sa ugoy ng mga bagay. 41 00:01:43,450 --> 00:01:47,900 Kami ay may isang pset dahil ito Biyernes sa tanghali. 42 00:01:47,900 --> 00:01:50,240 >> Sa tingin ko na sa iyo na matutunan sa iyong pagsusulit, oo? 43 00:01:50,240 --> 00:01:52,140 Kaya ibang tao na may hindi nagkaroon ng kanilang mga pagsusulit, 44 00:01:52,140 --> 00:01:55,416 mangyaring bumalik at makakuha ng iyong pagsusulit mula sa akin sa dulo ng seksyon. 45 00:01:55,416 --> 00:01:56,540 O subaybayan down ako sa campus. 46 00:01:56,540 --> 00:01:59,310 Kukunin ko ito sa akin sa isang lugar. 47 00:01:59,310 --> 00:02:02,120 >> Pre-proposal aming huling proyekto din. 48 00:02:02,120 --> 00:02:06,380 So, para sa amin na hindi kailanman kinuha klaseng ito ng dati, ang capstone ng CS50 49 00:02:06,380 --> 00:02:11,150 ay napaka culminated sa enggrandeng proyekto na mga mag-aaral ipanukala. 50 00:02:11,150 --> 00:02:14,300 At ang mga pre-proposal, lamang ng isang pangkalahatang ideya 51 00:02:14,300 --> 00:02:18,500 ng kung ano ang maaaring gusto ng isa na gawin para sa kanilang mga proyekto, na ideya ay dahil Lunes, 52 00:02:18,500 --> 00:02:20,780 sa susunod na Lunes sa tanghali. 53 00:02:20,780 --> 00:02:23,800 >> Kaya medyo marami, David tingin ko ay makipag-usap nang higit pa tungkol ito sa panayam 54 00:02:23,800 --> 00:02:25,390 kung siya ay hindi pa. 55 00:02:25,390 --> 00:02:28,710 At mayroong isang solid pahina sa aming website na nagpapaliwanag 56 00:02:28,710 --> 00:02:31,610 lahat ng mga pangangailangan ng mga proyekto. 57 00:02:31,610 --> 00:02:34,082 Ngunit mahalagang, pick anumang paksa na na sa iyo 58 00:02:34,082 --> 00:02:35,915 tinanggal na interesado sa sa kabuuan ng iyong oras dito 59 00:02:35,915 --> 00:02:41,760 sa CS, maging ito ay sa gaming o disenyo o video o anumang bagay. 60 00:02:41,760 --> 00:02:44,920 >> At maaari mong talagang uri ng ngayon ilapat ang ilan sa mga lessons 61 00:02:44,920 --> 00:02:52,470 na aming natutunan dito sa CS50-- hi, welcome-- sa medyo marami ang pagsasagawa 62 00:02:52,470 --> 00:02:56,320 ng isang pangwakas na proyekto ng iyong napili. 63 00:02:56,320 --> 00:02:59,570 Ang lahat ng iyon ay dahil Lunes ay lamang ng isang maikling blurb sa pamamagitan ng email 64 00:02:59,570 --> 00:03:02,010 sa akin, ang isang mabilis na pangungusap, like, hey, Andi, 65 00:03:02,010 --> 00:03:06,490 Ako ay talagang interesado sa pagdidisenyo isang laro na ito ay para sa iOS. 66 00:03:06,490 --> 00:03:07,420 Cool. 67 00:03:07,420 --> 00:03:10,767 Ipaalam lamang sa akin ang iyong mga maikling paunang mga ideya para sa iyong huling proyekto. 68 00:03:10,767 --> 00:03:13,850 At kami ay makipag-usap sa pamamagitan ng kung o hindi iyon ay talagang isang magandang ideya o hindi, 69 00:03:13,850 --> 00:03:15,590 kung ito ay isang magagawa ideya o hindi. 70 00:03:15,590 --> 00:03:20,760 Ngunit lamang ang pre-proposal ay dahil sa susunod na Lunes. 71 00:03:20,760 --> 00:03:24,190 pset6, ang aming kaibig-ibig web-- na ang mali. 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 Ito ay pset6, di ba? 75 00:03:26,680 --> 00:03:32,690 >> pset6, ang aming web server, ay dahil Biyernes sa tanghali sa mga late araw. 76 00:03:32,690 --> 00:03:37,660 Office oras ipagpatuloy normal mula Lunes hanggang Huwebes 8:00-11:00 sa linggong ito. 77 00:03:37,660 --> 00:03:39,710 Sa tingin ko Commons para sa sa susunod na tatlong gabi. 78 00:03:39,710 --> 00:03:40,310 Cool. 79 00:03:40,310 --> 00:03:44,260 Bago namin ay sa materyal, ay kahit sino ay may anumang mga katanungan, jokes, kwento? 80 00:03:44,260 --> 00:03:46,662 Ano ang ginawa mo para sa taglagas break? 81 00:03:46,662 --> 00:03:48,640 >> Madla: Ano gagawin ko? 82 00:03:48,640 --> 00:03:52,834 >> ANDI PENG: Mayroon ito ay edad nakaraan talaga. 83 00:03:52,834 --> 00:03:54,000 Christabel nagpunta sa New York. 84 00:03:54,000 --> 00:03:55,614 Nanatili ako dito at Netflixed. 85 00:03:55,614 --> 00:03:56,864 Madla: Oh, oo ako ay dito. 86 00:03:56,864 --> 00:03:57,614 ANDI PENG: Oh, OK. 87 00:03:57,614 --> 00:03:59,792 Madla: Hindi ko matandaan kung ano ang partikular. 88 00:03:59,792 --> 00:04:00,710 ANDI PENG: Iyon ay OK. 89 00:04:00,710 --> 00:04:01,960 Madla: Netflixing marahil. 90 00:04:01,960 --> 00:04:02,990 ANDI PENG: Netflixing. 91 00:04:02,990 --> 00:04:04,710 Oo, ito ay isang magandang panahon. 92 00:04:04,710 --> 00:04:05,780 SIGE. 93 00:04:05,780 --> 00:04:06,340 Lahat tama. 94 00:04:06,340 --> 00:04:08,877 Ang anumang mga katanungan bago namin tumalon sa materyal? 95 00:04:08,877 --> 00:04:11,210 Gayundin, kami ay pagpunta sa subukan upang mapabilis sa pamamagitan ng seksyon na ngayon, 96 00:04:11,210 --> 00:04:12,504 hindi masyadong maraming upang masakop. 97 00:04:12,504 --> 00:04:14,420 At sana, babalikan ka namin dito ng kaunti maaga. 98 00:04:14,420 --> 00:04:15,580 Paumanhin para sa hindi kendi, din. 99 00:04:15,580 --> 00:04:20,310 Ako ay isang pagkabigo, lalo na sa panahon ng Halloween. 100 00:04:20,310 --> 00:04:21,110 >> Lahat tama. 101 00:04:21,110 --> 00:04:21,810 Cool. 102 00:04:21,810 --> 00:04:28,370 Kaya kami ay pagpunta upang simulan ang pakikipag-usap tungkol isang argument command line na tinatawag chmod. 103 00:04:28,370 --> 00:04:32,850 chmod, ang lahat ng ito ay ay lamang ng isang Unix sistema tawag na isinasagawa mula sa command line 104 00:04:32,850 --> 00:04:34,700 upang baguhin ang mga pahintulot ng file. 105 00:04:34,700 --> 00:04:37,790 Kaya halimbawa, na namin lahat ay nakatagpo ng isang pahina 106 00:04:37,790 --> 00:04:40,550 tulad nito marahil sa ibang panahon sa ang aming buhay ng pagiging isang internet 107 00:04:40,550 --> 00:04:45,110 paggamit, kung saan ang aming web server ay may nagbigay sa atin ng error ng Forbidden. 108 00:04:45,110 --> 00:04:49,086 Wala kang pahintulot na ma-access, yadda, yadda, yadda, sa server na ito. 109 00:04:49,086 --> 00:04:50,960 Lahat na talaga ang ibig sabihin ay na ang mga pahintulot 110 00:04:50,960 --> 00:04:53,920 na ay naka-attach sa kahit anong pahina na iyong sinusubukang i-access 111 00:04:53,920 --> 00:04:55,840 ay hindi bukas para sa iyo. 112 00:04:55,840 --> 00:04:57,870 Kaya medyo marami, chmod ay ang paraan kung saan ang 113 00:04:57,870 --> 00:05:02,140 maaari naming baguhin ang mga pahintulot ng sistema upang mabigyan ang lahat, ang mga gumagamit, ang grupo, 114 00:05:02,140 --> 00:05:04,975 o sa mundo, o anumang kumbinasyon ng mga pag-access 115 00:05:04,975 --> 00:05:07,900 sa mga tiyak na mga file, directories, kahit ano talaga, 116 00:05:07,900 --> 00:05:11,720 anumang uri ng sistema sa isang operating system. 117 00:05:11,720 --> 00:05:14,039 Kaya kung anuman sa mga lalaki ay may mga computer kung sa palagay mo 118 00:05:14,039 --> 00:05:17,080 tulad ng mga sumusunod na kasama sa akin ngayon, ganap na huwag mag-atubiling i-type lamang ng mga bagay 119 00:05:17,080 --> 00:05:17,580 in. 120 00:05:17,580 --> 00:05:19,790 Kung hindi, maaari mo lamang mag-hang out. 121 00:05:19,790 --> 00:05:23,170 Kaya ako pagpunta sa aktwal na hilahin ang aking terminal ngayon. 122 00:05:23,170 --> 00:05:29,810 123 00:05:29,810 --> 00:05:32,310 >> Kaya ang utos na tumakbo chmod, o hindi bababa lamang 124 00:05:32,310 --> 00:05:37,840 sa listahan ng mga pahintulot ng iyong mga direktoryo ng file, ay lamang ng ls-l. 125 00:05:37,840 --> 00:05:42,270 Tulad ng iyong nakikita, ang isang grupo ng mga stuff nagpa-pop up karamihan sa mga ito 126 00:05:42,270 --> 00:05:45,390 ay mahalaga sa amin sa kaliwang side dito. 127 00:05:45,390 --> 00:05:48,710 Ikaw guys makita ng grupo ng PHP, ws, 1 /. 128 00:05:48,710 --> 00:05:49,210 Oo. 129 00:05:49,210 --> 00:05:51,400 >> Ang mga ay mahalagang lamang lahat ng mga pahintulot ng file 130 00:05:51,400 --> 00:05:55,960 upang ipaliwanag kung ano ang ilang mga directories at mga file sa loob ng iyong system na mayroon. 131 00:05:55,960 --> 00:05:58,150 Kaya sabihin bumalik sa ang kapangyarihan point dito. 132 00:05:58,150 --> 00:06:02,450 133 00:06:02,450 --> 00:06:06,500 Kaya sa karagdagan sa mga pangalan ng file bilang ka guys ay maaaring makita sa kanan, 134 00:06:06,500 --> 00:06:10,312 kami ay naghahanap upang makita ang mga mahalagang lamang ang haligi sa kaliwa. 135 00:06:10,312 --> 00:06:12,020 Kaya sa karagdagan sa makatarungan ang mga pangalan ng file, kami ay 136 00:06:12,020 --> 00:06:16,240 maaaring makita ang mga pahintulot ng file, ang kanilang grupo ng may-ari, ang pangalan ng grupo, ang petsa 137 00:06:16,240 --> 00:06:18,460 na ang huling mga file ay mabago, at iba pa. 138 00:06:18,460 --> 00:06:20,640 Maaari mong makita ang isang pulutong ng mga bagay na gamit ang chmod. 139 00:06:20,640 --> 00:06:26,037 Kaya ang paraan na binabasa namin ang chmod ay na ang unang titik namin medyo marami huwag pansinin 140 00:06:26,037 --> 00:06:27,370 sa mga tuntunin ng mga pahintulot sa pagbabasa. 141 00:06:27,370 --> 00:06:31,460 >> Ang unang titik ay nagsasabi lamang sa amin kung ano ang uri ng sistema namin ina-access. 142 00:06:31,460 --> 00:06:34,240 d, sa kasong ito, ay isang folder o direktoryo. 143 00:06:34,240 --> 00:06:38,430 Upang malaman namin na kasalukuyang aking workspace section pitong ay isang directory. 144 00:06:38,430 --> 00:06:41,530 At pagkatapos mong makita ang tatlong triads, mahalagang lamang 145 00:06:41,530 --> 00:06:43,490 tatlong hanay ng mga tatlong character. 146 00:06:43,490 --> 00:06:45,680 At maaari mong isipin ng bawat bilang bit. 147 00:06:45,680 --> 00:06:49,260 >> Kaya mo na lang tatlong hanay ng mga tatlong piraso, siyam na bits sa kabuuan. 148 00:06:49,260 --> 00:06:51,420 Tinatrato mo ang mga ito sa mga grupo ng tatlo. 149 00:06:51,420 --> 00:06:56,230 Kaya ang unang grupo ng tatlo ay palagi ang iyong user permissions. 150 00:06:56,230 --> 00:07:00,557 >> Ang iyong pangalawang grupo ng mga tatlong ay palagi ang iyong mga pahintulot ng pangkat. 151 00:07:00,557 --> 00:07:02,765 At ang iyong mga ikatlong hanay ng tatlong ay palaging tulad ng mundo, 152 00:07:02,765 --> 00:07:04,380 ang lahat ng dako mga pahintulot. 153 00:07:04,380 --> 00:07:06,320 Kaya ako hulaan ang madaling tanong na magtanong ay kung ano ang 154 00:07:06,320 --> 00:07:08,051 ang pagkakaiba sa pagitan ng mga user at mga pangkat. 155 00:07:08,051 --> 00:07:09,800 Ang pangunahing pagkakaiba pagitan ng mga user at pangkat 156 00:07:09,800 --> 00:07:13,180 ay na ang isang user ay lamang sa iyo nang personal pag-access sa anumang mga ito ay ngayon. 157 00:07:13,180 --> 00:07:18,070 Ang isang grupo ay maaaring maging kung mayroon kang maramihang gumagamit sa isang computer, halimbawa. 158 00:07:18,070 --> 00:07:20,280 Lahat ng mga ito ay itinuturing bilang isang grupo. 159 00:07:20,280 --> 00:07:23,220 >> At pagkatapos ay ang mundo ay lamang sa mundo, lahat ng tao. 160 00:07:23,220 --> 00:07:31,010 Kaya maaari naming makita sa ibang pagkakataon sa kung paano namin baguhin ang mga sa iba't ibang mga pahintulot. 161 00:07:31,010 --> 00:07:33,080 Kaya medyo marami, hindi namin pagpunta sa pa rin ang focus 162 00:07:33,080 --> 00:07:38,450 sa bahagi sa kaliwa, kung saan para sa CS50 nakita namin drwx, 163 00:07:38,450 --> 00:07:40,970 kung saan ang r lamang nangangahulugan na ito ay nababasa. 164 00:07:40,970 --> 00:07:42,620 >> W Ang lamang ay nangangahulugang ito ay writable. 165 00:07:42,620 --> 00:07:45,470 At pagkatapos ay ang x lamang nangangahulugan na ito ay executable. 166 00:07:45,470 --> 00:07:47,220 Gusto mo itong isipin uri ng hindi magkaroon ng kahulugan. 167 00:07:47,220 --> 00:07:47,993 Ito ay dapat na e. 168 00:07:47,993 --> 00:07:50,150 Ngunit x tunay na uri ng gawa ng isang maliit na mas mahusay, 169 00:07:50,150 --> 00:07:51,690 dahil maaari mo itong tandaan mas mahusay. 170 00:07:51,690 --> 00:07:56,406 >> Kaya ang tatlong uri ng mga bagay-bagay sa iyo maaaring gawin, maaari mong alinman sa basahin ang isang file, 171 00:07:56,406 --> 00:07:59,280 maaari kang magkaroon ng pahintulot upang makapagsulat ng isang file, o maaari kang magkaroon ng pahintulot 172 00:07:59,280 --> 00:08:00,780 upang magpatakbo ng isang file. 173 00:08:00,780 --> 00:08:04,580 At upang ang mga paraan na kami ay tunay na kumakatawan sa mga sa bits 174 00:08:04,580 --> 00:08:06,940 ay ang mga numero ng 4, 2, at 1. 175 00:08:06,940 --> 00:08:12,870 Kaya ang anumang bagay na nababasa ay kinakatawan ng mga numero ng 4. 176 00:08:12,870 --> 00:08:15,150 >> Anumang bagay na ay writable ay kinakatawan sa pamamagitan ng 2. 177 00:08:15,150 --> 00:08:18,880 At ang anumang bagay na executable na kinakatawan ng 1. 178 00:08:18,880 --> 00:08:22,860 Kaya sa puntong ito, maaari din namin na kumatawan sa mga Numbers 179 00:08:22,860 --> 00:08:25,281 hi, welcome, sa isang iba't ibang mga paraan. 180 00:08:25,281 --> 00:08:25,780 Sorry. 181 00:08:25,780 --> 00:08:28,510 Bago ang lahat, ako ng pagpunta sa Humihingi sa ngalan ng lahat ng tao 182 00:08:28,510 --> 00:08:29,468 pagpasok ng klase ngayon. 183 00:08:29,468 --> 00:08:30,810 Nakalimutan ko ang kendi ngayon. 184 00:08:30,810 --> 00:08:33,640 Sorry ako failure this week ng Halloween. 185 00:08:33,640 --> 00:08:37,070 Dadalhin ko double ang halaga ng kendi sa susunod na pagkakataon na gumawa ng up para dito. 186 00:08:37,070 --> 00:08:42,360 Ngunit pa rin, sorry tungkol na guys sorry,. 187 00:08:42,360 --> 00:08:46,640 >> Kaya ang paraan na aming makakaya aktwal na input sa aming mga utos ang argument ay namin 188 00:08:46,640 --> 00:08:51,760 maaaring gawin chmod pahintulot slash group, kung saan ang grupo ay kahit na ano na lang 189 00:08:51,760 --> 00:08:54,130 grupo namin sinusubukan na baguhin. 190 00:08:54,130 --> 00:08:56,600 At ang pahintulot ay ano man ang gusto naming idagdag ito. 191 00:08:56,600 --> 00:08:58,860 Kaya halimbawa, ang plus nagdadagdag pahintulot, 192 00:08:58,860 --> 00:09:01,590 at ang ibawas tumatagal ang layo ng mga pahintulot. 193 00:09:01,590 --> 00:09:07,060 >> At ang uri ng grupo na namin ang aming isang para sa lahat, u para sa mga gumagamit, g para sa mga pangkat, 194 00:09:07,060 --> 00:09:09,050 o o para sa iba. 195 00:09:09,050 --> 00:09:10,300 Ito ay isang bit abstract ngayon. 196 00:09:10,300 --> 00:09:13,550 Ngunit kami ay pumunta sa paglipas ng ilang mga halimbawa upang ipakita lamang ang mga tunay na mabilis. 197 00:09:13,550 --> 00:09:16,960 Ang bawat mabuting na ito slide, kaya ang maaari kong ilipat sa? 198 00:09:16,960 --> 00:09:18,280 Cool. 199 00:09:18,280 --> 00:09:21,290 >> Kaya halimbawa, rwx. 200 00:09:21,290 --> 00:09:26,720 Bago natin pag-usapan kung ano ang kinakatawan nito, una sa lahat kung ano ang ibig sabihin ng rwx? 201 00:09:26,720 --> 00:09:31,450 Kung nakikita mo na ito ang ilang mga file ay may pahintulot ng rwx, 202 00:09:31,450 --> 00:09:34,270 ano ang ibig sabihin na ang mga tao ay maaaring magawa? 203 00:09:34,270 --> 00:09:35,740 >> Madla: Basahin, magsulat at execute. 204 00:09:35,740 --> 00:09:36,420 >> ANDI PENG: Oo, eksakto. 205 00:09:36,420 --> 00:09:37,840 Maaari mong basahin write at execute. 206 00:09:37,840 --> 00:09:40,790 Dahil ang lahat ng tatlong mga character ay kasalukuyan. 207 00:09:40,790 --> 00:09:44,370 Kaya kung pumunta kami ng maaga at makipag-usap tungkol sa mga ito sa mga tuntunin ng bits, 208 00:09:44,370 --> 00:09:48,490 ang rwx maaari ring kinakatawan bilang 700. 209 00:09:48,490 --> 00:09:53,370 Dahil tulad ng makikita mo sa anumang uri ng pahintulot na direktoryo ng file, 210 00:09:53,370 --> 00:09:54,320 may tatlong triads. 211 00:09:54,320 --> 00:09:58,060 >> Sa kasong ito, ang unang lamang ay may anumang bagay na may tatlong bahagi. 212 00:09:58,060 --> 00:10:04,050 Kaya sa kasong ito, ang r ay 4, ang w ay 2, at ang x ay 1. 213 00:10:04,050 --> 00:10:05,860 Kung nagdagdag ka ng mga sama-sama, ito ay 7. 214 00:10:05,860 --> 00:10:08,730 >> At kaya kung convert mo ito sa binary, ito ay 700. 215 00:10:08,730 --> 00:10:10,310 Dahil 7 ay ang unang bagay na may tatlong. 216 00:10:10,310 --> 00:10:12,760 0, may walang kasalukuyan ay sa ikalawang triad. 217 00:10:12,760 --> 00:10:15,850 At pagkatapos ay may walang kasalukuyan ay sa ang ikatlong bagay na may tatlong, kaya na ang isa pang 0. 218 00:10:15,850 --> 00:10:22,520 >> Kaya sa parehong kahulugan, ng grupo ng triads maaaring katawanin lang sa bits, lamang 219 00:10:22,520 --> 00:10:23,600 sa binary pati na rin. 220 00:10:23,600 --> 00:10:29,920 Kaya 700 ay nangangahulugan na ang parehong bagay tulad ng rwx ------ sa mga tuntunin ng mga pahintulot. 221 00:10:29,920 --> 00:10:32,590 Ang bawat malinaw sa mga iyon? 222 00:10:32,590 --> 00:10:33,090 Cool. 223 00:10:33,090 --> 00:10:40,290 At kaya chmod 111 bigyan na mga pahintulot upang ang file? 224 00:10:40,290 --> 00:10:42,600 Bigyan mo guys ng ilang segundo ang pag-convert na ito. 225 00:10:42,600 --> 00:10:51,140 226 00:10:51,140 --> 00:10:53,250 Tandaan, ang unang triad ay para sa mga gumagamit. 227 00:10:53,250 --> 00:10:56,320 Ang ikalawang bagay na may tatlong ay para sa grupo. 228 00:10:56,320 --> 00:10:59,450 At ang ikatlong triad ay para sa lahat. 229 00:10:59,450 --> 00:11:03,680 >> At kaya chmod 111 bigyan na uri ng mga pahintulot at kanino? 230 00:11:03,680 --> 00:11:06,520 231 00:11:06,520 --> 00:11:09,020 Maglaan ng ilang segundo upang isipin ang tungkol dito at bumalik. 232 00:11:09,020 --> 00:11:19,790 233 00:11:19,790 --> 00:11:20,910 Oo. 234 00:11:20,910 --> 00:11:22,920 >> Madla: Kaya maaari itong maisagawa lahat. 235 00:11:22,920 --> 00:11:23,920 ANDI PENG: Yup, eksakto. 236 00:11:23,920 --> 00:11:25,544 Madla: Ngunit walang sinuman ang maaaring magbasa o magsulat. 237 00:11:25,544 --> 00:11:27,910 ANDI PENG: At huwag mag-atubiling upang ipaliwanag sa lahat ng tao 238 00:11:27,910 --> 00:11:29,860 kung paano ka dumating sa na konklusyon. 239 00:11:29,860 --> 00:11:34,290 >> Madla: Well, para sa mga gumagamit, ang mga grupo, at ang mundo, ang lahat ay 1, 240 00:11:34,290 --> 00:11:35,700 kung saan ay ang code para sa executable. 241 00:11:35,700 --> 00:11:37,070 >> ANDI PENG: Oo, eksakto. 242 00:11:37,070 --> 00:11:42,320 Kaya 1, sa kasong ito, ang lahat ng malaman namin ay na iyon ay ang executable code. 243 00:11:42,320 --> 00:11:45,280 Dahil ang pagbabasa ay 4. 244 00:11:45,280 --> 00:11:45,990 Pagsusulat ay 2. 245 00:11:45,990 --> 00:11:47,230 At ang mga executable ay 1. 246 00:11:47,230 --> 00:11:51,580 Kaya ay ang lahat ng tatlong triads ay 1, na Nangangahulugan ito na sa buong mundo, upang ang mga gumagamit, 247 00:11:51,580 --> 00:11:54,680 at sa grupo, sila ay ang lahat ng executable. 248 00:11:54,680 --> 00:11:56,170 >> Ang bawat mabuting may na? 249 00:11:56,170 --> 00:11:56,940 SIGE. 250 00:11:56,940 --> 00:11:59,180 At upang ang ikalawang paraan na kami ay maaaring aktwal na 251 00:11:59,180 --> 00:12:01,220 isulat ito man ay sa iyo maaaring gawin lamang chmod 252 00:12:01,220 --> 00:12:05,050 isang plus x. isang nangangahulugan na ang lahat o lahat. 253 00:12:05,050 --> 00:12:07,060 Plus Ang ibig sabihin nito ay ang pagbibigay ng mga pahintulot sa. 254 00:12:07,060 --> 00:12:09,112 At pagkatapos ay ang x ay nangangahulugan executable. 255 00:12:09,112 --> 00:12:11,070 Kaya mayroong dalawang utos ay talagang magkapareho. 256 00:12:11,070 --> 00:12:12,903 Kaya kung nais mong magpatakbo ng na ito sa iyong terminal, 257 00:12:12,903 --> 00:12:15,830 gawin mo chmod 111, pangalan ng iyong direktoryo o ang iyong mga file. 258 00:12:15,830 --> 00:12:18,520 O maaari mong gawin chmod isang plus x, pangalan ng iyong file na direktoryo. 259 00:12:18,520 --> 00:12:22,150 Parehong bagay, tulad ng isang mas madaling paraan, marahil, para sa ilang upang kumatawan o pagbabago 260 00:12:22,150 --> 00:12:24,280 pahintulot ng file. 261 00:12:24,280 --> 00:12:28,806 >> Ang bawat isa OK sa chmod bago lumipat kami sa? 262 00:12:28,806 --> 00:12:31,700 Cool. 263 00:12:31,700 --> 00:12:35,336 Kaya ngayon kami ay pagpunta sa ulo sa isang ilang mga slide ng very abstract concepts 264 00:12:35,336 --> 00:12:37,210 na ako ay medyo marami pagpunta sa pamamagitan ng hangin. 265 00:12:37,210 --> 00:12:39,530 At ito ay ganap ang OK kung ikaw hindi maunawaan ang lahat. 266 00:12:39,530 --> 00:12:42,330 >> Kahit ngayon, ko pa rin ay hindi talaga maunawaan ang lahat ng bagay na ganap. 267 00:12:42,330 --> 00:12:44,640 Ngunit ito ay higit pa sa pagkuha ng sa tuktok na antas na pag-unawa 268 00:12:44,640 --> 00:12:47,280 ng kung paano gumagana ang ilan sa mga bagay na ito. 269 00:12:47,280 --> 00:12:50,490 Kaya kami ay pagpunta sa makipag-usap mabilis tungkol TCP / IP, 270 00:12:50,490 --> 00:12:54,880 ang matuwid, Transmission Control Protocol slash Internet Protocol. 271 00:12:54,880 --> 00:12:57,135 >> Pagpapabalik mula sa panayam, David, ay itinuro niya sa iyo 272 00:12:57,135 --> 00:13:00,700 mga halimbawa kung saan gusto niya ipasa ang mga tala sa isang sobre 273 00:13:00,700 --> 00:13:02,790 hanggang sa gusto itaas ng silid para sa panayam? 274 00:13:02,790 --> 00:13:06,990 Kaya sa auditorium law school Nagpakita David mahalagang 275 00:13:06,990 --> 00:13:10,370 paano TCP / IP gumagana sa kamalayan na ang lahat ng ito 276 00:13:10,370 --> 00:13:14,300 ay ay isang paraan ng pagtiyak na ang data ay naihatid na sa kabuuan ng isang server 277 00:13:14,300 --> 00:13:15,870 o sa internet. 278 00:13:15,870 --> 00:13:22,270 Kaya sa halimbawa ng sobre at ang mensahe, ang mga user sa dulo 279 00:13:22,270 --> 00:13:26,410 maaaring makita na, oh, ako na kailangan upang makatanggap ng mga apat na packet ng mga impormasyon. 280 00:13:26,410 --> 00:13:28,096 >> Ngunit ko talagang lamang nakatanggap ng tatlo. 281 00:13:28,096 --> 00:13:29,470 Ito ay nangangahulugan na ako dapat ay kulang ng isa. 282 00:13:29,470 --> 00:13:30,760 At ang isa ay hindi naihatid. 283 00:13:30,760 --> 00:13:33,990 At kaya TCP / IP sa internet, sa pamamagitan ng iyong computer at ang server, 284 00:13:33,990 --> 00:13:35,500 ang ipinapakita ng parehong bagay. 285 00:13:35,500 --> 00:13:38,900 Lahat ng ito ay tukuyin ang isang framework na kung saan ang isang nawalang data 286 00:13:38,900 --> 00:13:41,100 packet maaaring magalit at natanggap. 287 00:13:41,100 --> 00:13:44,760 >> Tulad ng sa internet kapag sinusubukan upang ma-access ang mga file sa online o magpadala ng mga file 288 00:13:44,760 --> 00:13:48,210 sa iyong kaibigan o tumingin sa web browser, libu-libo at libu-libo 289 00:13:48,210 --> 00:13:50,440 ng bilyun-bilyong ng bytes ng impormasyon 290 00:13:50,440 --> 00:13:52,840 ay inililipat sa bawat millisecond. 291 00:13:52,840 --> 00:13:54,560 At ito ay tunay, tunay na nakalilito. 292 00:13:54,560 --> 00:13:57,110 At ito ay tunay na mahirap talagang malaman kung ano ang naipadala 293 00:13:57,110 --> 00:13:58,270 at kung ano ang hindi pa naipapadala. 294 00:13:58,270 --> 00:14:02,210 >> At kaya lang tumutukoy TCP / IP isang cohesive framework 295 00:14:02,210 --> 00:14:04,115 kung saan ang iyong web browser at ang iyong server 296 00:14:04,115 --> 00:14:05,990 Maaari uri ng makipag-usap sa bawat isa, lamang 297 00:14:05,990 --> 00:14:08,550 tiyakin na packet ay lahat dito at wala ni nawalang 298 00:14:08,550 --> 00:14:12,700 at ang lahat ng data na iyong hiniling ay tunay na pagpapakita ng maayos. 299 00:14:12,700 --> 00:14:16,350 Ang bawat OK sa lamang na tunay maikling mataas na antas maintindihan? 300 00:14:16,350 --> 00:14:18,510 Cool. 301 00:14:18,510 --> 00:14:21,550 >> Kaya pagkatapos kami ay pagpunta upang ilipat sa pakikipag-usap tungkol HTTP, na 302 00:14:21,550 --> 00:14:24,610 ay lamang ng Hypertext Transfer Protocol. 303 00:14:24,610 --> 00:14:32,550 HTTP, ang lahat ng mga ito ay ang anuman anumang pahina o file ay na-access sa iyong website, 304 00:14:32,550 --> 00:14:35,810 ang server ay nagbalik ng isang HTTP status code sa tugon 305 00:14:35,810 --> 00:14:39,869 sa kahilingan ng siguraduhin na alinman, oh, nagpunta ang hiling na ito sa pamamagitan ng. 306 00:14:39,869 --> 00:14:41,410 At lahat ng bagay ay lumilitaw nang tama. 307 00:14:41,410 --> 00:14:43,500 O kaya naman, oh, hindi, 404. 308 00:14:43,500 --> 00:14:44,730 May nangyaring mali. 309 00:14:44,730 --> 00:14:45,940 Oh, hindi ko maaaring ipakita. 310 00:14:45,940 --> 00:14:50,370 >> Lahat ng ito ay na kahit na ano sinusubukan mong ma-access, 311 00:14:50,370 --> 00:14:55,160 gamitin bilang user ay sumusubok na ma-access, sa internet-- siguraduhin lamang 312 00:14:55,160 --> 00:15:00,080 na matagumpay mong alinman sa magkaroon ng access anumang ito o hindi 313 00:15:00,080 --> 00:15:02,080 Matagumpay na na-access ang anumang ito ay. 314 00:15:02,080 --> 00:15:05,120 At upang ang mga HTTP status code lang nagbibigay sa iyo 315 00:15:05,120 --> 00:15:09,910 isang paraan ng kawalan ng kakayahang malaman kung o hindi ito ay matagumpay o hindi. 316 00:15:09,910 --> 00:15:13,440 Kaya halimbawa, ang isang halimbawa kahilingan. 317 00:15:13,440 --> 00:15:16,050 >> Maaari mong makita dito ito ay karaniwang karaniwang apat na linya. 318 00:15:16,050 --> 00:15:22,530 Kami ay may isang GET HTTP 1.1, na kung saan ay lamang ang kahilingan paraan URL, ang protocol 319 00:15:22,530 --> 00:15:24,490 na bersyon, ang patlang na pangalan, at ang mga halaga ng patlang. 320 00:15:24,490 --> 00:15:26,810 Kaya hindi na kailangan upang ganap na kabisaduhin ang anumang bagay dito. 321 00:15:26,810 --> 00:15:29,960 Just uri ng pamilyar ang ang iyong sarili sa kung paano ang mga tumingin. 322 00:15:29,960 --> 00:15:34,060 >> Sa halimbawang ito, ang kahilingan na paraan URL ay lamang anumang paghiling 323 00:15:34,060 --> 00:15:35,620 ikaw ay nagpapadala sa server. 324 00:15:35,620 --> 00:15:40,710 Tulad ng, hey, server, talagang gusto kong access yadda, yadda, yadda, HTTP page. 325 00:15:40,710 --> 00:15:43,785 Ang bersyon ng protocol ay kahit na ano na lang bersyon ng iyong host o sa iyong server 326 00:15:43,785 --> 00:15:45,490 ay gumagamit upang ma-access ang impormasyon. 327 00:15:45,490 --> 00:15:49,510 >> Ang patlang ng pangalan ay ang website o ang URL na sinusubukan mong i-access, 328 00:15:49,510 --> 00:15:52,610 sa kasong ito, www.apple.com. 329 00:15:52,610 --> 00:15:56,110 At ang mga halaga ng patlang ay karaniwang lamang pangalan, halaga. 330 00:15:56,110 --> 00:15:59,540 At ito ay maaaring maging anumang uri ng kumbinasyon ng mga titik o numero o ano pa man. 331 00:15:59,540 --> 00:16:02,890 >> Kaya ang isang tipikal na kahilingan, kaya kung ano ang iyong computer talaga 332 00:16:02,890 --> 00:16:08,400 nagpapadala sa server na nagsasabing, hey, alam mo kung ano ang kailangan ko ito na ipinapakita, 333 00:16:08,400 --> 00:16:13,000 iyon ang uri ng kahilingan na sila talaga matanggap. 334 00:16:13,000 --> 00:16:16,760 Ang isang halimbawa tugon ng kung ano ang server ay magpadala ng pabalik sa iyo 335 00:16:16,760 --> 00:16:20,320 ay medyo marami ang mga parehong bagay, maliban sa isang code ng katayuan sa itaas. 336 00:16:20,320 --> 00:16:24,550 Kaya 200, 2 0 0 ay palaging ang code ng katayuan para sa OK. 337 00:16:24,550 --> 00:16:26,050 Tulad ng, OK, nagpunta ang hiling na ito sa pamamagitan ng. 338 00:16:26,050 --> 00:16:27,980 Ikaw ay makakapag-access ang lahat ng bagay nang tama. 339 00:16:27,980 --> 00:16:28,810 Maganda ang buhay. 340 00:16:28,810 --> 00:16:29,990 Life is fine. 341 00:16:29,990 --> 00:16:32,150 Lahat ng bagay ay lubos na mabuti. 342 00:16:32,150 --> 00:16:36,050 >> At kaya ito lamang ay nagsasabi sa iyong browser at iyong server, hey, good ang lahat. 343 00:16:36,050 --> 00:16:37,470 Nakakuha ako ng lahat ng impormasyon na kailangan ko. 344 00:16:37,470 --> 00:16:39,160 Cool. 345 00:16:39,160 --> 00:16:41,790 Ngunit ang problema ay minsan problema dumating up 346 00:16:41,790 --> 00:16:46,850 kapag have-- mong huling tingin ko Usapan ako tungkol nauulit. 347 00:16:46,850 --> 00:16:48,870 Ikaw ay may mas mahusay na mga sagot. 348 00:16:48,870 --> 00:16:52,660 >> Kaya halimbawa, 404 ay ang Page Not Found. 349 00:16:52,660 --> 00:16:54,897 Ikaw minsan ay may isang Forbidden access. 350 00:16:54,897 --> 00:16:56,730 Mayroon kang iba't-ibang mga iba pang mga Mga code ng katayuan na ako 351 00:16:56,730 --> 00:16:59,688 Siguraduhin na ang lahat na iyong nakita na kapag ikaw ay sinusubukan na gawin ang pananaliksik sa internet. 352 00:16:59,688 --> 00:17:02,300 At nagbibigay sa iyo ng iyong browser ang, hindi, hindi maaaring ma-access. 353 00:17:02,300 --> 00:17:04,190 At ikaw ay tulad, well, crap. 354 00:17:04,190 --> 00:17:09,260 >> Kaya lang medyo marami, may ilang medyo karaniwang mga code ng katayuan. 355 00:17:09,260 --> 00:17:14,109 Siguro pamilyar ang iyong sarili sa kung alin ang mga iyon ay. 356 00:17:14,109 --> 00:17:16,000 Ang pinakanakakatawa isa na Sa tingin ko kailanman ko na narinig 357 00:17:16,000 --> 00:17:18,040 of-- kung mangyari sa maghanap ng lahat ng mga ito 358 00:17:18,040 --> 00:17:21,490 online, para sa ilang kadahilanan ay mayroong talagang isang tunay na code ng katayuan 359 00:17:21,490 --> 00:17:26,619 tinatawag na 418 ako tsarera. 360 00:17:26,619 --> 00:17:29,610 >> Googled ko na kung saan ang pinagmulan ng mga ito ay mula sa. 361 00:17:29,610 --> 00:17:33,150 At tila isang April Fools ' Araw ng ilang dekada na ang nakakaraan, 362 00:17:33,150 --> 00:17:36,415 Akala ng isang tao ay ito ay masayang-maingay upang lumikha ng isang bagong code ng katayuan na tinatawag na 418 363 00:17:36,415 --> 00:17:37,380 Ako ay isang tsarera. 364 00:17:37,380 --> 00:17:40,760 Lehitimong, ang pangalan ng mga ito code ay tinatawag na ako tsarera. 365 00:17:40,760 --> 00:17:43,670 >> Nakalimutan ko kung ano ang pahinang mayroon ka na pumunta sa aktwal na gumawa ng ganitong display. 366 00:17:43,670 --> 00:17:47,955 Ngunit sa malas, maaari mong talagang makakuha ng isang code ng katayuan ng Ako 367 00:17:47,955 --> 00:17:51,400 isang tsarera paanuman sa pamamagitan ng paggawa ng isang bagay. 368 00:17:51,400 --> 00:17:54,480 Kaya ang may daan-daan at daan-daang mga code ng katayuan. 369 00:17:54,480 --> 00:17:56,730 >> Ang ilan sa kanila gumawa ng mas maraming kahulugan kaysa sa iba. 370 00:17:56,730 --> 00:18:01,430 Ngunit pamilyar ang medyo mas lamang ang iyong sarili sa mga pinaka-karaniwang mga bago. 371 00:18:01,430 --> 00:18:04,090 Ang hiniling na katawan entity ay maikli at mataba, tila. 372 00:18:04,090 --> 00:18:07,990 >> Kaya minsan may mga karagdagang error nakakatakot kaysa Ako tsarera. 373 00:18:07,990 --> 00:18:11,210 Ngunit ito ay isa na ako hulaan ikaw uri ng pag-asa upang maabot. 374 00:18:11,210 --> 00:18:14,130 Ngunit Hindi sa tingin ko ay ikaw. 375 00:18:14,130 --> 00:18:17,260 Ang bawat mabuting sa status lang codes, mga kahilingan, mga proseso, paggawa ng 376 00:18:17,260 --> 00:18:19,155 siguraduhin na ang impormasyon ay inihatid ng maayos? 377 00:18:19,155 --> 00:18:22,270 378 00:18:22,270 --> 00:18:26,120 >> Kaya ngayon kami ay pagpunta sa transition sa ng isang masayang bahagi ng seksyon ngayon, 379 00:18:26,120 --> 00:18:28,500 kung saan ang usapan namin ng kaunti tungkol sa HTML. 380 00:18:28,500 --> 00:18:32,580 HTML, ang lahat ng mga ito ay HyperText Markup Language. 381 00:18:32,580 --> 00:18:35,160 Ito lang ang standard na wika mong gamitin upang lumikha ng lahat ng web 382 00:18:35,160 --> 00:18:36,690 mga pahina sa internet. 383 00:18:36,690 --> 00:18:39,560 >> Kaya ang anumang mga web page, kung ano ang ang iyong mga paboritong mga web page? 384 00:18:39,560 --> 00:18:40,855 Ano ang iyong paboritong mga web page? 385 00:18:40,855 --> 00:18:41,771 >> Madla: [hindi marinig]. 386 00:18:41,771 --> 00:18:42,270 387 00:18:42,270 --> 00:18:43,090 ANDI PENG: Sorry? 388 00:18:43,090 --> 00:18:43,980 >> Madla: Tumblr. 389 00:18:43,980 --> 00:18:44,730 >> ANDI PENG: Tumblr. 390 00:18:44,730 --> 00:18:46,800 Kaya Tumblr ay nakasulat sa HTML. 391 00:18:46,800 --> 00:18:50,700 At kaya kami ay talagang pumunta sa pamamagitan at play sa paligid na may ilan sa mga bagay na ito 392 00:18:50,700 --> 00:18:51,980 sa ibang Pagkakataon. 393 00:18:51,980 --> 00:18:54,980 Medyo magkano ang lahat ng bagay na kailangan mong malaman, na malaman, 394 00:18:54,980 --> 00:18:58,540 sumulat ng HTML maaari mong malamang lamang ng Google sa internet. 395 00:18:58,540 --> 00:19:04,490 >> HTML, ito ay hindi isang programa tulad ng C kung saan maaari kang lumikha ng mga variable na ito at gawin 396 00:19:04,490 --> 00:19:05,600 mga cool na bagay sa mga ito. 397 00:19:05,600 --> 00:19:08,747 Ito ay higit pa lamang, oh, ito ay kung paano ko gusto ang mga bagay na lumabas sa aking website. 398 00:19:08,747 --> 00:19:10,080 At lamang ako ng pagpunta sa ilagay ito sa. 399 00:19:10,080 --> 00:19:12,160 At ito ang nangyayari sa estilo ito. 400 00:19:12,160 --> 00:19:15,650 >> Kaya HTML, sa isang kahulugan, ito ay katulad lamang isang format o template na wika. 401 00:19:15,650 --> 00:19:16,680 Ito ay isang pulutong mas madali. 402 00:19:16,680 --> 00:19:19,030 Ito ay isang pulutong mas madali upang matuto, isang pulutong mas madali na magsulat sa 403 00:19:19,030 --> 00:19:21,450 kaysa sa iyong karaniwang programming wika, napakadali, 404 00:19:21,450 --> 00:19:24,310 tunay user mapupuntahan at friendly. 405 00:19:24,310 --> 00:19:29,040 >> Kaya kami ay tunay na pagpunta upang i-play sa paligid, isulat ang aming sariling mga pahina sa ngayon. 406 00:19:29,040 --> 00:19:32,900 Ngunit bago tayo magsimula, gusto ko lang na pumunta sa paglipas ng ilang mga maikling mga pinakamahusay na kasanayan. 407 00:19:32,900 --> 00:19:35,660 Dahil HTML ay tulad ng isang madaling wika at dahil kahit 408 00:19:35,660 --> 00:19:39,012 kung gagawin mo ng ilang mga bagay na mali, kung minsan ay hindi maaaring mapansin, 409 00:19:39,012 --> 00:19:41,970 nais naming tiyakin na hindi namin talagang pagsunod sa aming mga pinakamahusay na kasanayan 410 00:19:41,970 --> 00:19:44,490 tiyakin na ang mga bagay na kaya ang nangyayari sa paligid ngunit 411 00:19:44,490 --> 00:19:49,660 ay hindi palaging pagpunta sa hindi pumunta sa kanan tiyakin na ang mga ito ay nai-minimize. 412 00:19:49,660 --> 00:19:53,570 >> Kaya medyo marami, siguraduhin iyong pagsasara ng lahat ng iyong mga tag 413 00:19:53,570 --> 00:19:54,737 kapag sumusulat ka sa HTML. 414 00:19:54,737 --> 00:19:56,486 Kung ikaw ay pagbubukas ng isang katawan, tiyakin na ikaw ay 415 00:19:56,486 --> 00:19:58,015 pagsasara ng ito sa isang katawan sa isang lugar. 416 00:19:58,015 --> 00:20:00,720 Gusto mong tiyakin na ang iyong napatunayan ang web page sa pamamagitan ng paggamit 417 00:20:00,720 --> 00:20:02,070 ano ang tinatawag na W3 validator. 418 00:20:02,070 --> 00:20:05,460 Maaari mo lamang Google na online, at mayroong isang link sa mga ito. 419 00:20:05,460 --> 00:20:07,820 >> At pagkatapos ay gusto mong hiwalay na HTML, na kung saan 420 00:20:07,820 --> 00:20:13,060 ay ang iyong markup language mula sa iyong estilo, kung saan ay ang CSS wika na si David 421 00:20:13,060 --> 00:20:17,510 nagpakita na rin kami pagpunta sa play ng kaunti sa panayam. 422 00:20:17,510 --> 00:20:19,120 Cool. 423 00:20:19,120 --> 00:20:23,500 Kaya anumang oras na gusto mong patakbuhin HTML sa CS50 appliance, 424 00:20:23,500 --> 00:20:26,240 kami ay pagpunta sa magpatakbo ng isang programa na tinatawag na Apache, 425 00:20:26,240 --> 00:20:29,810 kung saan ang lahat ng ito ay isang built lamang sa web server na ang lahat sa CS50 426 00:20:29,810 --> 00:20:31,410 may access sa. 427 00:20:31,410 --> 00:20:35,700 Tinatawag namin ito apache50 dahil lamang namin itawag sa lahat ng bagay 50 sa CS50. 428 00:20:35,700 --> 00:20:39,610 >> Kaya ang paraan na simulan mo ang CS50 web server ay sa pamamagitan ng pag-type sa iyong utos 429 00:20:39,610 --> 00:20:42,860 line apache50 simulan tuldok. 430 00:20:42,860 --> 00:20:46,665 At kung gusto mong tapusin ang mga ito sa anumang time, apache50 mo end walang tuldok. 431 00:20:46,665 --> 00:20:47,910 At ikaw ay pindutin lang ang Enter. 432 00:20:47,910 --> 00:20:50,810 At ito ay dapat heading up dito sa lalong madaling panahon. 433 00:20:50,810 --> 00:20:53,630 434 00:20:53,630 --> 00:20:54,130 Oo. 435 00:20:54,130 --> 00:20:58,110 Kaya lang ako pagpunta sa mabilis na pumunta sa paglipas ng isang halimbawa ng isang talagang maikling web page. 436 00:20:58,110 --> 00:21:00,280 At kami ay pagpunta sa gastusin tulad ng 10, 15 minuto sa paglalaro 437 00:21:00,280 --> 00:21:04,008 sa paligid ng pagsusulat ng aming sariling mga pahina ng web. 438 00:21:04,008 --> 00:21:05,320 SIGE. 439 00:21:05,320 --> 00:21:07,841 Kaya dito sa IDE-- Maaari makita ng lahat ang na? 440 00:21:07,841 --> 00:21:08,340 Hindi naman. 441 00:21:08,340 --> 00:21:11,400 Dito, makikita ko mag-zoom in. 442 00:21:11,400 --> 00:21:15,850 >> Lamang ko na nakuha ito maikling template dito sa mga wala sa aktwal na ito. 443 00:21:15,850 --> 00:21:20,660 Kami ay pagpunta upang mabilis na magsulat isang programa ng HTML na kung saan namin lamang 444 00:21:20,660 --> 00:21:22,050 kamustahin sa mundo. 445 00:21:22,050 --> 00:21:24,970 Kaya parehong bagay tulad ng sa C, ngayon hindi namin lamang ang pagpunta sa gawin ito sa HTML. 446 00:21:24,970 --> 00:21:28,250 Kahit sino ba ang gusto na talagang lamang subukan ang pagbibigay sa akin ang unang bagay na 447 00:21:28,250 --> 00:21:31,870 ay kailangang ilagay sa isang HTML na dokumento? 448 00:21:31,870 --> 00:21:32,850 Oo. 449 00:21:32,850 --> 00:21:35,965 >> Madla: Ang mga bracket, ang [hindi marinig]. 450 00:21:35,965 --> 00:21:36,590 ANDI PENG: Yep. 451 00:21:36,590 --> 00:21:47,200 452 00:21:47,200 --> 00:21:50,930 Kaya ang isang bagay na lubhang kakaiba sa HTML na karaniwang namin ayon sa kaugalian 453 00:21:50,930 --> 00:21:56,080 hindi makaharap sa iba pang utos antas ng mga wika line programming 454 00:21:56,080 --> 00:21:59,890 ay na namin ang aktwal na tukuyin ang uri ng file 455 00:21:59,890 --> 00:22:01,987 na ito ay magiging sa tuktok ng aming code. 456 00:22:01,987 --> 00:22:04,570 Kaya sa ganitong instance-- tingin ko na ang karapatan na utos, di ba? 457 00:22:04,570 --> 00:22:10,050 458 00:22:10,050 --> 00:22:10,550 Oo. 459 00:22:10,550 --> 00:22:14,860 Sa itaas, gusto mo lamang na isama putok DOCTYPE html sa mga bracket lamang 460 00:22:14,860 --> 00:22:17,670 na sabihin sa iyong computer, hey, tumingin sa labas. 461 00:22:17,670 --> 00:22:20,050 At HTML na dokumento ay darating. 462 00:22:20,050 --> 00:22:22,250 At pagkatapos ay kung paano gawin ang gusto namin upang magsimula sa aming mga file? 463 00:22:22,250 --> 00:22:25,540 Kung gusto lang namin upang kamustahin, magkaroon ng isang web page na nagsasabing hello sa mundo, 464 00:22:25,540 --> 00:22:26,915 paano namin pumunta tungkol sa paggawa na ito? 465 00:22:26,915 --> 00:22:32,910 466 00:22:32,910 --> 00:22:35,300 >> Sa totoo lang, ni-umpisa ng Google ipaalam. 467 00:22:35,300 --> 00:22:36,910 At maaari naming aktwal na gawin ito. 468 00:22:36,910 --> 00:22:43,170 469 00:22:43,170 --> 00:22:43,670 Oo. 470 00:22:43,670 --> 00:22:44,840 Mayroon kaming pumunta. 471 00:22:44,840 --> 00:22:47,630 Kaya HTML. 472 00:22:47,630 --> 00:22:52,390 Tulad ng iyong nakikita, ang aking browser ay talagang Awtomatikong Pag-istilo na ito para sa akin. 473 00:22:52,390 --> 00:22:56,010 >> Parehong bagay tulad ng sa C, kapag kayo lumikha ng isang bukas kulot suhay, 474 00:22:56,010 --> 00:22:59,020 awtomatiko ang iyong browser nagdadagdag sa isang malapit kulot suhay. 475 00:22:59,020 --> 00:23:02,210 Sa kabutihang-palad, ang aming mga IDE nagmamahal sa gawin ito para sa amin pati na rin. 476 00:23:02,210 --> 00:23:05,490 Kaya ngayon maaari naming uri ng type ang simula ng isang tag, 477 00:23:05,490 --> 00:23:09,139 at ito ay pagpunta sa palaging sabihin sa amin upang tandaan na i-type ang katapusan ng tag. 478 00:23:09,139 --> 00:23:10,680 Sa tingin ko ito ay kailangang sa malaking titik. 479 00:23:10,680 --> 00:23:15,510 480 00:23:15,510 --> 00:23:21,760 At pagkatapos ay gusto naming idagdag, palagi, isang ulo sa kung saan ay ang pamagat. 481 00:23:21,760 --> 00:23:25,270 482 00:23:25,270 --> 00:23:29,160 Gusto lang namin na baka tumawag ito hello, at pagkatapos ay katawan. 483 00:23:29,160 --> 00:23:34,010 484 00:23:34,010 --> 00:23:36,310 >> At doon ka pumunta. 485 00:23:36,310 --> 00:23:39,650 Iyon ay talagang aming dokumentong HTML. 486 00:23:39,650 --> 00:23:45,030 Kaya ang paraan na ang anumang mga dokumento na HTML ay laging istilong in-- parehong bagay 487 00:23:45,030 --> 00:23:46,720 may int pangunahing walang bisa. 488 00:23:46,720 --> 00:23:49,600 Gusto mong palaging upang magkaroon ng HTML isang bukas at malapit na tag 489 00:23:49,600 --> 00:23:52,100 sa tuktok at ibaba ng iyong code. 490 00:23:52,100 --> 00:23:56,900 >> Gusto mong magkaroon ng isang ulo sa loob ng na naglalaman ng mga pamagat, ano man lang 491 00:23:56,900 --> 00:24:01,430 ay pagpunta upang ipakita ang mga tab ng iyong web pahina, at pagkatapos ng isang katawan sa loob ng na 492 00:24:01,430 --> 00:24:04,120 ay talagang ipapakita ang nilalaman ng kahit anong gusto mong gawin. 493 00:24:04,120 --> 00:24:08,220 Kaya kung nais mong aktwal na patakbuhin ito, ako pagpunta upang mag-zoom back out. 494 00:24:08,220 --> 00:24:12,740 Maaari mong simulan ang tunay na apache50 simulan tuldok. 495 00:24:12,740 --> 00:24:15,650 496 00:24:15,650 --> 00:24:16,150 Cool. 497 00:24:16,150 --> 00:24:18,980 At sa gayon ay maaari mong makita, ngayon ang link na ito ay pop up. 498 00:24:18,980 --> 00:24:21,940 Sinasabi nito sa iyong site ngayon magagamit sa ilang mga link sa ibaba. 499 00:24:21,940 --> 00:24:25,910 Kaya lahat ng aming mga IDE ay done-- hindi IDE, sorry-- oo, 500 00:24:25,910 --> 00:24:33,280 aming ginawa IDE ay lumikha ng isang web link kung saan ang lahat ng aming mga pahina ng web 501 00:24:33,280 --> 00:24:35,407 Maaaring ma-access sa server. 502 00:24:35,407 --> 00:24:36,490 Kaya sabihin tumagal ng isang pagtingin dito. 503 00:24:36,490 --> 00:24:40,240 >> Mag-click sa mga ito, pumunta sa hello.html Hayaan. 504 00:24:40,240 --> 00:24:42,895 At makikita mo ang isang napaka-simple web page para sa kumusta mundo. 505 00:24:42,895 --> 00:24:46,477 506 00:24:46,477 --> 00:24:47,420 SIGE. 507 00:24:47,420 --> 00:24:50,513 Talagang Kami ay pagpunta sa makatarungan Mayroon everyone-- oo, ano ang up? 508 00:24:50,513 --> 00:24:52,353 >> Madla: Mayroon akong isang pangunahing tanong. 509 00:24:52,353 --> 00:24:52,978 ANDI PENG: Yup. 510 00:24:52,978 --> 00:24:58,064 Madla: Paano mo i-save ang ang iyong file bilang isang HTML? 511 00:24:58,064 --> 00:24:58,730 ANDI PENG: Oo. 512 00:24:58,730 --> 00:25:02,960 513 00:25:02,960 --> 00:25:10,820 Kaya kung ako ay upang lumikha ng isang bagong file, kung gagawin ko New File, Untittle, kung gagawin ko, 514 00:25:10,820 --> 00:25:14,390 section.html, boom, na ang lahat ng kailangan kong gawin. 515 00:25:14,390 --> 00:25:15,363 >> Madla: [hindi marinig]? 516 00:25:15,363 --> 00:25:15,946 ANDI PENG: No. 517 00:25:15,946 --> 00:25:16,660 Madla: [hindi marinig]. 518 00:25:16,660 --> 00:25:17,240 ANDI PENG: No. 519 00:25:17,240 --> 00:25:18,156 Madla: [hindi marinig]. 520 00:25:18,156 --> 00:25:19,110 ANDI PENG: Oo. 521 00:25:19,110 --> 00:25:24,300 Medyo marami, ang extension na ito sa ang file na ito ay sa loob ng iyong IDE, 522 00:25:24,300 --> 00:25:27,840 na nagsasabi sa mga computer, na Sinasabihan nito ang browser, hey, tumingin sa labas. 523 00:25:27,840 --> 00:25:30,480 Ito ay magiging code nakasulat sa wikang ito. 524 00:25:30,480 --> 00:25:34,240 Kaya halimbawa, sa Microsoft Salita, kung ano ang ginagawa ang lahat ng mga dokumento ng Word 525 00:25:34,240 --> 00:25:37,070 magtapos sa, kung ano ang extension? 526 00:25:37,070 --> 00:25:39,830 .doc o .docx, di ba? 527 00:25:39,830 --> 00:25:42,299 >> Ang lahat ng iyon ay ay tumutukoy sa ang inyong mga operating system, hey, 528 00:25:42,299 --> 00:25:43,840 nakuha mo na ang isang dokumento na Word pagdating up. 529 00:25:43,840 --> 00:25:44,940 Buksan ito sa Word. 530 00:25:44,940 --> 00:25:46,955 Parehong bagay sa mga PDF. 531 00:25:46,955 --> 00:25:49,650 Alam ito, oh, kailangan ko upang buksan ang file na ito 532 00:25:49,650 --> 00:25:52,020 na may Adobe Reader o Adobe Acrobat. 533 00:25:52,020 --> 00:25:56,130 >> At kaya gumana extension ng parehong paraan tulad ng sa iyong computer. 534 00:25:56,130 --> 00:26:00,750 Kung tinukoy mo ang iyong mga code sa pahina na pinangalanan HTML, pagkatapos ay alam ng mga ito, 535 00:26:00,750 --> 00:26:01,880 oh, nakuha mo na ang HTML code. 536 00:26:01,880 --> 00:26:04,890 Pupunta ako sa ituring ito bilang html code. 537 00:26:04,890 --> 00:26:06,600 Kaya ito ay sobrang matalino sa na kahulugan. 538 00:26:06,600 --> 00:26:11,360 539 00:26:11,360 --> 00:26:18,730 >> Kaya lahat ng tao, sabihin tumagal tulad ng 10 minuto at lumikha lamang ang aming sariling mga website. 540 00:26:18,730 --> 00:26:21,020 Ni si sa mga magagandang bagay Hayaan. 541 00:26:21,020 --> 00:26:23,440 Huwag mag-atubiling sabihin kahit anong gusto mo. 542 00:26:23,440 --> 00:26:27,890 Gusto ko lang tiyakin na server ng lahat ay tumatakbo nang tama 543 00:26:27,890 --> 00:26:31,220 bago namin magbakante mo sa pset. 544 00:26:31,220 --> 00:26:33,490 Dahil kung ang iyong server hindi tumatakbo para sa pset, 545 00:26:33,490 --> 00:26:34,847 na magiging tunay, tunay masama. 546 00:26:34,847 --> 00:27:17,380 547 00:27:17,380 --> 00:27:21,093 >> Lamang ako ng pagpunta sa lumutang sa paligid at makita kung ano ang gumagana sa lahat. 548 00:27:21,093 --> 00:27:26,965 549 00:27:26,965 --> 00:27:27,590 Kumusta na? 550 00:27:27,590 --> 00:27:29,048 >> Madla: ko lang naka-on ang aking computer. 551 00:27:29,048 --> 00:27:29,923 >> ANDI PENG: Iyon ay OK. 552 00:27:29,923 --> 00:27:41,200 553 00:27:41,200 --> 00:27:42,390 >> Madla: [hindi marinig]. 554 00:27:42,390 --> 00:27:44,284 >> ANDI PENG: ang iyong IDE lang. 555 00:27:44,284 --> 00:27:44,784 Oo. 556 00:27:44,784 --> 00:27:54,040 557 00:27:54,040 --> 00:27:55,910 >> Madla: [hindi marinig]. 558 00:27:55,910 --> 00:27:57,590 >> ANDI PENG: Ito ay OK. 559 00:27:57,590 --> 00:27:59,491 >> Madla: [hindi marinig]. 560 00:27:59,491 --> 00:28:00,490 ANDI PENG: Ganap fine. 561 00:28:00,490 --> 00:28:47,705 562 00:28:47,705 --> 00:28:51,530 Ay lahat ng tao sa pag-access kanilang mga web server OK? 563 00:28:51,530 --> 00:28:52,970 Ay apache50 tumatakbo OK? 564 00:28:52,970 --> 00:28:54,700 Sa tingin ko sa ilan sa mga ang iba pang mga seksyon, kami ay 565 00:28:54,700 --> 00:28:58,790 may mga isyu sa mga tao ay hindi pagiging ma-access sa server. 566 00:28:58,790 --> 00:28:59,290 Oo. 567 00:28:59,290 --> 00:29:05,764 Kaya mo lamang tumakbo apache50 simulan space period space. 568 00:29:05,764 --> 00:29:06,680 Madla: [hindi marinig]. 569 00:29:06,680 --> 00:29:07,610 ANDI PENG: Yup. 570 00:29:07,610 --> 00:29:08,294 Good? 571 00:29:08,294 --> 00:29:09,210 >> Madla: [hindi marinig]. 572 00:29:09,210 --> 00:29:12,530 573 00:29:12,530 --> 00:29:13,350 >> ANDI PENG: Oh, OK. 574 00:29:13,350 --> 00:29:14,808 Kaya ikaw ay dapat na magkaroon ng isang space. 575 00:29:14,808 --> 00:29:15,425 Kaya apache50-- 576 00:29:15,425 --> 00:29:16,115 >> Madla: ginawa ko. 577 00:29:16,115 --> 00:29:17,661 >> ANDI PENG: --start space. 578 00:29:17,661 --> 00:29:18,660 Madla: Oh, space dot. 579 00:29:18,660 --> 00:29:20,110 ANDI PENG: Yup, space dot. 580 00:29:20,110 --> 00:29:23,230 May pumunta ka. 581 00:29:23,230 --> 00:29:25,490 Kaya nga kung ikaw ay may isang HTML na pahina na nilikha, 582 00:29:25,490 --> 00:29:28,560 pagkatapos ay maaari mo lamang pumunta nang direkta sa link na ito ang tumutukoy. 583 00:29:28,560 --> 00:29:30,539 At maaari mo ring ma-access ito. 584 00:29:30,539 --> 00:29:35,130 585 00:29:35,130 --> 00:29:37,876 >> Ang bawat nagawa upang ma-access ang kanilang mga pahina ng web OK? 586 00:29:37,876 --> 00:29:39,339 >> Madla: [hindi marinig]. 587 00:29:39,339 --> 00:29:40,380 ANDI PENG: Oh, na ang OK. 588 00:29:40,380 --> 00:29:43,551 589 00:29:43,551 --> 00:29:44,964 >> Madla: [hindi marinig]. 590 00:29:44,964 --> 00:29:45,630 ANDI PENG: Oo. 591 00:29:45,630 --> 00:29:48,171 Sa tingin ko ay maaari mong aktwal na buksan ito sa loob ng iyong browser, browser 592 00:29:48,171 --> 00:29:49,955 at hindi lamang sa iyong IDE browser. 593 00:29:49,955 --> 00:29:51,580 Oo, sa palagay ko kung ikaw ay kopyahin at i-paste ito. 594 00:29:51,580 --> 00:29:53,920 >> Madla: At pagkatapos ay paano namin i-off ito? 595 00:29:53,920 --> 00:29:54,590 [Hindi marinig] 596 00:29:54,590 --> 00:29:58,720 >> ANDI PENG: Oo, gawin mo apache50 itigil na walang period. 597 00:29:58,720 --> 00:29:59,220 Oo. 598 00:29:59,220 --> 00:30:01,180 >> Madla: [hindi marinig]. 599 00:30:01,180 --> 00:30:02,768 >> ANDI PENG: Sa pamamagitan ng walang period. 600 00:30:02,768 --> 00:30:04,051 Oo. 601 00:30:04,051 --> 00:30:04,550 Mayroon kaming pumunta. 602 00:30:04,550 --> 00:30:05,050 Oo. 603 00:30:05,050 --> 00:30:08,480 604 00:30:08,480 --> 00:30:09,855 Kami ay ang paglikha ng aming sariling mga pahina ng web. 605 00:30:09,855 --> 00:30:10,646 >> Madla: Oh, cool. 606 00:30:10,646 --> 00:30:13,396 607 00:30:13,396 --> 00:30:14,062 ANDI PENG: Oo. 608 00:30:14,062 --> 00:30:20,484 609 00:30:20,484 --> 00:30:22,420 >> Madla: Mayroon akong tanong. 610 00:30:22,420 --> 00:30:25,294 Kaya Apache 50-- 611 00:30:25,294 --> 00:30:26,731 >> ANDI PENG: 50, oo. 612 00:30:26,731 --> 00:30:28,168 >> Madla: [hindi marinig]. 613 00:30:28,168 --> 00:30:29,130 >> ANDI PENG: Ano? 614 00:30:29,130 --> 00:30:29,750 Iyon ay kakaiba. 615 00:30:29,750 --> 00:30:32,244 Tingnan, na uri ng isyu na nangyayari bago. 616 00:30:32,244 --> 00:30:37,820 617 00:30:37,820 --> 00:30:38,730 SIGE. 618 00:30:38,730 --> 00:30:39,800 Tingnan akin pagkatapos section. 619 00:30:39,800 --> 00:30:42,320 Dahil sa pagkakaroon namin ang ilang mga mga isyu sa server. 620 00:30:42,320 --> 00:30:44,325 >> At nais mong gumawa ng Siguraduhin na ang iyong server ay 621 00:30:44,325 --> 00:30:45,700 tumatakbo bago simulan ang pset. 622 00:30:45,700 --> 00:30:47,800 Dahil ikaw ay pagpunta sa kailangan ito. 623 00:30:47,800 --> 00:30:48,300 Oo. 624 00:30:48,300 --> 00:30:51,299 Mayroon bang sinumang iba pa na hindi pa maaaring makakuha ng kanilang server upang magsimula? 625 00:30:51,299 --> 00:31:12,410 626 00:31:12,410 --> 00:31:17,840 >> Para sa mga mo na nais na magdagdag ng karagdagang mga estilo sa iyong mga web page, 627 00:31:17,840 --> 00:31:20,450 maaari naming aktwal na gawin kung ano ang Ginawa ni David sa panayam pati na rin, 628 00:31:20,450 --> 00:31:24,070 na kung saan ay lumikha ng isang karagdagang estilo sheet, na kung saan ay isang tuldok CSS, Cascading 629 00:31:24,070 --> 00:31:30,080 Style Sheet at talagang idagdag lamang ito sa. 630 00:31:30,080 --> 00:31:33,550 Kaya halimbawa, lamang ko na nilikha ko medyo marami halos ang eksaktong parehong isa 631 00:31:33,550 --> 00:31:37,180 Ginawa ni David sa panayam. 632 00:31:37,180 --> 00:31:39,220 Maaari mong medyo marami gawin lamang katawan. 633 00:31:39,220 --> 00:31:45,980 >> Mayroon kang kung ano ang tinatawag na tag na kung saan ang Maaari kang mag-aplay sa IDE kahit anong section 634 00:31:45,980 --> 00:31:48,650 gusto mo sa loob ng iyong aktwal na pahina ng HTML. 635 00:31:48,650 --> 00:31:54,890 Kaya ang katawan ng pahina, ikaw maaaring gawin text align center. 636 00:31:54,890 --> 00:31:58,110 At pagkatapos ay makikita ko ang creative isang tag na tinatawag na tuktok sa loob ng 637 00:31:58,110 --> 00:32:01,860 ng kung saan gusto ko ang mga bagay na mangyari, magtalaga ng isang mas malaking sukat pixel 638 00:32:01,860 --> 00:32:03,104 para sa mga font. 639 00:32:03,104 --> 00:32:04,520 Gusto ko ang bigat ng font na naka-bold. 640 00:32:04,520 --> 00:32:06,478 At gusto ko ang kulay sa maging kulay bughaw, lamang arbitrary 641 00:32:06,478 --> 00:32:08,570 mga halaga na ako ay nagpasya na pumili. 642 00:32:08,570 --> 00:32:10,870 Maaari ba akong lumikha ng isa pang tag na tinatawag na gitna. 643 00:32:10,870 --> 00:32:12,640 Laki ng font, gawin itong isang bit mas maliit. 644 00:32:12,640 --> 00:32:17,730 At pagkatapos ay ang maaari kong gumawa ng isa pang tag tinatawag ibaba kung saan gusto ko ang laki ng font 645 00:32:17,730 --> 00:32:20,900 upang maging pa rin kahit na mas maliit. 646 00:32:20,900 --> 00:32:25,630 >> At kaya medyo marami na ito ay halimbawa lamang ng source code o pinagmulan ng mga style sheet 647 00:32:25,630 --> 00:32:27,400 na ito ay tunay madali na lang sa Google. 648 00:32:27,400 --> 00:32:31,560 Kung sinasabi mo, oh, Gusto ko ang aking font na italicized at dark green, 649 00:32:31,560 --> 00:32:33,980 Maaari mong malamang na ang Google, at pagkatapos ito ay magsasabi sa iyo 650 00:32:33,980 --> 00:32:37,590 ang naaangkop na mga tag o ID upang lumikha ng. 651 00:32:37,590 --> 00:32:41,670 At upang ang mga paraan na gagawin mo talaga uri ng mayroon na ito sa isang dokumentong HTML 652 00:32:41,670 --> 00:32:45,660 o gamitin ito ay ang lahat ng kailangan mong na gawin dito ay sa ulo 653 00:32:45,660 --> 00:32:48,560 magdagdag ng isang link sa mga style sheet. 654 00:32:48,560 --> 00:32:53,600 >> Kaya maaari mo lamang i-link href equals ano man ang pangalan ng iyong style sheet 655 00:32:53,600 --> 00:32:54,590 ay. 656 00:32:54,590 --> 00:32:56,740 At pagkatapos ay ang relasyon ay isang style sheet. 657 00:32:56,740 --> 00:33:00,700 Kaya sa loob ng anumang HTML na dokumento, hangga't kapag isinama mo ito dot CSS sheet, 658 00:33:00,700 --> 00:33:07,140 maaari mo ring ma-access ang at may roon ang mga properties. 659 00:33:07,140 --> 00:33:10,370 >> Kaya halimbawa, dito na hindi ko na lang gumawa ng isa pang halimbawa ng web page. 660 00:33:10,370 --> 00:33:15,680 Ito ay malugod na seksyon CS50 Martes 2:00-03:30 sa akin. 661 00:33:15,680 --> 00:33:20,300 At pagkatapos Nagdagdag ako ng isang magandang imahe na dapat namin potensyal na magagawang makita. 662 00:33:20,300 --> 00:33:24,620 >> Kaya't kung ikaw ay kumuha ng isang tumingin dito, kung pupunta ka sa style.html, 663 00:33:24,620 --> 00:33:26,310 lumikha kami ng isang web page gamit ang mga kuting. 664 00:33:26,310 --> 00:33:29,420 Dahil kuting ay kasindak-sindak. 665 00:33:29,420 --> 00:33:33,570 Kaya ang pagdaragdag ng isang imahe ay img lang SRC link. 666 00:33:33,570 --> 00:33:36,260 667 00:33:36,260 --> 00:33:38,310 >> Medyo marami, kung mayroong anumang uri ng mga tampok 668 00:33:38,310 --> 00:33:40,268 na nais mong idagdag sa iyong website-- kaya sabihin nating, 669 00:33:40,268 --> 00:33:43,290 gusto mong magdagdag ng isang menu o isang bar sa paghahanap o tulad 670 00:33:43,290 --> 00:33:46,450 isang image-- lamang ng Google kung paano gawin iyon. 671 00:33:46,450 --> 00:33:48,277 At kayo gumawa ng mapa lamang sa format na iyon. 672 00:33:48,277 --> 00:33:50,110 At maaari mo lamang pretty magkano idagdag lamang ito sa. 673 00:33:50,110 --> 00:33:52,670 Ito ay talagang, talagang madali. 674 00:33:52,670 --> 00:33:55,014 >> Ay ang paglikha ng aming sariling mga pahina ng web ngayon. 675 00:33:55,014 --> 00:33:55,680 Kung gusto mo-- 676 00:33:55,680 --> 00:33:56,580 >> Madla: [hindi marinig] 677 00:33:56,580 --> 00:33:57,470 >> ANDI PENG: Sorry? 678 00:33:57,470 --> 00:33:59,310 >> Madla: [hindi marinig]. 679 00:33:59,310 --> 00:34:01,340 >> ANDI PENG: Oh, ang mga div ay isang dibisyon lamang 680 00:34:01,340 --> 00:34:04,370 nagsasabi sa akin na, oh, mayroon akong sa isang tiyak na seksyon na tinatawag na 681 00:34:04,370 --> 00:34:07,480 gitna kung saan ako nag-aaplay aking CSS tag, at pagkatapos ay 682 00:34:07,480 --> 00:34:09,619 aking iba pang mga dibisyon sa ibaba. 683 00:34:09,619 --> 00:34:10,785 Iyan na ang lahat na ito ay nagsasabi sa iyo. 684 00:34:10,785 --> 00:34:12,743 Dahil ito ay magaling na panatilihin mga bagay na malinis sa mga order, 685 00:34:12,743 --> 00:34:16,304 kaya alam ng programa kung paano eksaktong upang tumakbo. 686 00:34:16,304 --> 00:34:18,929 At sa tingin ko kopyahin i-paste ito sa aking aktwal na mga browser pati na rin. 687 00:34:18,929 --> 00:34:21,110 Ito ay dapat na fine. 688 00:34:21,110 --> 00:34:21,610 Oo. 689 00:34:21,610 --> 00:34:24,330 690 00:34:24,330 --> 00:34:25,989 Yay. 691 00:34:25,989 --> 00:34:29,380 Kaya kung ang lahat ay nagnanais na lang subukan ang paglikha ng isang web page, 692 00:34:29,380 --> 00:34:32,169 kami ay kumuha ng isa pang dalawa hanggang tatlong minuto. 693 00:34:32,169 --> 00:34:34,460 Gusto ko lang tiyakin server ng lahat ay tumatakbo 694 00:34:34,460 --> 00:34:36,941 at lahat ng tao ay may isang ideya ng kung paano gawin iyon. 695 00:34:36,941 --> 00:34:38,774 Kung ikaw guys nais na kumuha ng iyong mga computer. 696 00:34:38,774 --> 00:34:44,630 697 00:34:44,630 --> 00:34:45,635 Hindi pa rin gumagana? 698 00:34:45,635 --> 00:34:47,420 >> Madla: Ako lang [hindi marinig]. 699 00:34:47,420 --> 00:34:49,838 >> ANDI PENG: Siguro subukan ang 50 na rin. 700 00:34:49,838 --> 00:34:51,392 Oo. 701 00:34:51,392 --> 00:34:52,308 Madla: [hindi marinig]. 702 00:34:52,308 --> 00:35:17,502 703 00:35:17,502 --> 00:35:18,990 >> ANDI PENG: Oo. 704 00:35:18,990 --> 00:35:23,750 Kaya ang paraan na nagsimula ka ng bagong web server sa IDE ay lamang 705 00:35:23,750 --> 00:35:27,889 gawin apache50 start space space dot. 706 00:35:27,889 --> 00:35:30,430 Nais ko lamang tiyakin server ng lahat ay tumatakbo OK. 707 00:35:30,430 --> 00:35:31,763 >> Madla: Dito, sa terminal? 708 00:35:31,763 --> 00:35:33,334 ANDI PENG: Oo. 709 00:35:33,334 --> 00:35:34,250 Madla: [hindi marinig]. 710 00:35:34,250 --> 00:35:38,000 711 00:35:38,000 --> 00:35:38,985 >> ANDI PENG: Apache. 712 00:35:38,985 --> 00:35:42,010 Sa totoo lang, tingin ko ikaw ay pagpapatakbo ng isang bagay na. 713 00:35:42,010 --> 00:35:43,145 Oo, ikaw ay talagang pagpapatakbo ng isang iba't ibang mga server. 714 00:35:43,145 --> 00:35:43,830 Oo, ikaw ay mabuti. 715 00:35:43,830 --> 00:35:45,085 Hangga't na gumagana, ikaw ay OK. 716 00:35:45,085 --> 00:35:45,626 >> Madla: OK. 717 00:35:45,626 --> 00:35:47,615 ANDI PENG: Mayroong dalawang mga paraan upang magpatakbo ng mga server. 718 00:35:47,615 --> 00:35:49,990 Kaya't hangga't ang isa sa mga paraan ay gumagana, ito ay ang lahat ng karapatan. 719 00:35:49,990 --> 00:36:18,470 720 00:36:18,470 --> 00:36:21,680 Kinukuha namin ang isa pang minuto lamang sa uri ng tapusin up 721 00:36:21,680 --> 00:36:25,280 ang pagtatapos touch ng kahit anong Nais web page na iyong guys na gumawa. 722 00:36:25,280 --> 00:36:26,830 >> Gumagana ba ang lahat ng tao sa daan? 723 00:36:26,830 --> 00:36:30,910 Server ng bawa't isa ay tumatakbo bukod para sa iyo? 724 00:36:30,910 --> 00:36:32,210 Susubukan naming malaman na out. 725 00:36:32,210 --> 00:36:34,137 At HTML ni medyo simple. 726 00:36:34,137 --> 00:36:35,220 Kaya sa tingin ko hindi namin ang lahat ng mabuti. 727 00:36:35,220 --> 00:36:38,260 728 00:36:38,260 --> 00:36:38,760 Oo. 729 00:36:38,760 --> 00:36:41,070 Babalik ako. 730 00:36:41,070 --> 00:36:42,797 >> Madla: [hindi marinig]. 731 00:36:42,797 --> 00:36:43,380 ANDI PENG: OK. 732 00:36:43,380 --> 00:36:44,770 Madla: Kaya ito lang nagsimula upang i-load up. 733 00:36:44,770 --> 00:36:45,686 ANDI PENG: Huwag mag-alala. 734 00:36:45,686 --> 00:36:49,590 735 00:36:49,590 --> 00:36:52,680 Kaya HTML, may source code na ay magiging online pagkatapos ng seksyon. 736 00:36:52,680 --> 00:36:54,810 Gayundin, David ay may isang buong bungkos online na rin. 737 00:36:54,810 --> 00:36:58,190 Just uri ng sulyap sa paglipas ng ito sa makita kung paano mga HTML na pahina ay nakasulat. 738 00:36:58,190 --> 00:36:59,920 Ito ay medyo madali. 739 00:36:59,920 --> 00:37:03,979 Anumang bagay na hindi mo alam, ikaw pretty marami lang Google at ikaw ay mabuti. 740 00:37:03,979 --> 00:37:06,270 Gusto ko lang tiyakin na ang iyong mga server ay tumatakbo. 741 00:37:06,270 --> 00:37:12,962 742 00:37:12,962 --> 00:37:14,880 >> Madla: ba gawin ito madalas? 743 00:37:14,880 --> 00:37:16,421 >> ANDI PENG: Ito ay hindi kailanman nangyari sa akin. 744 00:37:16,421 --> 00:37:18,470 745 00:37:18,470 --> 00:37:20,782 Hindi ko alam kung ito ay maaaring kahit hibernate. 746 00:37:20,782 --> 00:37:22,516 >> Madla: [hindi marinig]. 747 00:37:22,516 --> 00:37:25,140 ANDI PENG: Sa tingin ko everyone-- minahan ay hindi kailanman hibernated bago. 748 00:37:25,140 --> 00:37:26,860 At hindi ko alam kung bakit. 749 00:37:26,860 --> 00:37:27,566 Ito ay kakaiba. 750 00:37:27,566 --> 00:37:29,310 >> Madla: [hindi marinig]. 751 00:37:29,310 --> 00:37:30,643 >> ANDI PENG: Ay iyo hibernating? 752 00:37:30,643 --> 00:37:32,615 753 00:37:32,615 --> 00:37:33,669 >> Madla: [hindi marinig]. 754 00:37:33,669 --> 00:37:34,335 ANDI PENG: Oo. 755 00:37:34,335 --> 00:37:39,122 756 00:37:39,122 --> 00:37:39,872 Madla: Ito ay OK. 757 00:37:39,872 --> 00:37:40,622 Kaya minsan ito ay bukas. 758 00:37:40,622 --> 00:37:41,760 ANDI PENG: OK. 759 00:37:41,760 --> 00:37:43,940 Susubukan naming harapin ang ilang mga server mga isyu pagkatapos ng section. 760 00:37:43,940 --> 00:37:44,860 Dapat kang maging fine. 761 00:37:44,860 --> 00:37:47,950 Kahit na, gusto mong tiyakin na ikaw ay makuha ang mga ito nalutas bago ka umalis. 762 00:37:47,950 --> 00:37:49,380 Dahil kung ang iyong server hindi tumatakbo, pagkatapos ikaw ay 763 00:37:49,380 --> 00:37:52,004 hindi pagpunta sa magagawang upang gawin ang pset, tulad ng anumang bahagi ng pset. 764 00:37:52,004 --> 00:37:54,200 Kaya nais mong tiyakin na na gumagana. 765 00:37:54,200 --> 00:37:54,831 Cool. 766 00:37:54,831 --> 00:37:55,330 Lahat tama. 767 00:37:55,330 --> 00:37:56,490 Magpaalam kuting. 768 00:37:56,490 --> 00:37:59,670 Ako na ginugol ng isang mahabang oras na naghahanap ng na kuting larawan upang ilagay sa. 769 00:37:59,670 --> 00:38:02,272 So, anyways. 770 00:38:02,272 --> 00:38:04,950 >> Madla: [hindi marinig]. 771 00:38:04,950 --> 00:38:05,770 >> ANDI PENG: Sorry? 772 00:38:05,770 --> 00:38:07,345 >> Madla: [hindi marinig]. 773 00:38:07,345 --> 00:38:08,970 ANDI PENG: Sa tingin ko ito ay sa website. 774 00:38:08,970 --> 00:38:11,064 Tulad ng mga spec? 775 00:38:11,064 --> 00:38:12,020 >> Madla: [hindi marinig]. 776 00:38:12,020 --> 00:38:16,080 Sa tingin ko ang spec ay lamang online sa week pitong. 777 00:38:16,080 --> 00:38:18,850 Sa tingin ko ito ay tinatawag pset6, kahit bagaman hindi namin sa week pitong, na 778 00:38:18,850 --> 00:38:19,641 ay isang bit computing. 779 00:38:19,641 --> 00:38:23,130 Madla: Ngunit ibig sabihin ko kung ikaw nais na tingnan at-- kung ikaw 780 00:38:23,130 --> 00:38:28,666 nais na pull up ang aming bersyon ng ang web site mula sa aming sever? 781 00:38:28,666 --> 00:38:31,820 Kaya tulad server.c ay ang pset, di ba? 782 00:38:31,820 --> 00:38:36,514 Kung nais mong tingnan ang mga ito, tulad ng kung paano ito tseke out? 783 00:38:36,514 --> 00:38:38,680 ANDI PENG: Oh, kaya ang tunay na ang pset, ang lahat ng aming ginagawa 784 00:38:38,680 --> 00:38:41,405 dito ay implementing-- dito, Kukunin ko pumunta sa paglipas ng ito sa madaling sabi. 785 00:38:41,405 --> 00:38:44,187 786 00:38:44,187 --> 00:38:47,020 Kaya para sa lahat ng tao na lang ang tapat na paraan na seksyon, ikaw guys sa kapalaran. 787 00:38:47,020 --> 00:38:49,340 May kaunting materyal upang aktwal na masakop ngayon. 788 00:38:49,340 --> 00:38:52,585 >> Lamang ako pagpunta sa gastusin sa susunod na 20 minuto ang pagpunta sa pset tulong. 789 00:38:52,585 --> 00:38:55,210 Dahil mayroong mga kapaki-pakinabang sa ilang mga mga function na makakatulong sa iyong buhay. 790 00:38:55,210 --> 00:38:57,501 At sana, kami ay magiging out ng mga dito sa tulad ng 20 minuto. 791 00:38:57,501 --> 00:38:58,360 SIGE. 792 00:38:58,360 --> 00:39:00,252 >> Kaya pset7 ay mali. 793 00:39:00,252 --> 00:39:02,460 Kahit na hindi namin sa week pitong, ito ay aktwal na pset6. 794 00:39:02,460 --> 00:39:04,220 Kukunin ko na baguhin iyon. 795 00:39:04,220 --> 00:39:07,550 Lahat ng aming ginagawa sa pset6 ay ang paglikha ng isang web server. 796 00:39:07,550 --> 00:39:09,010 Iyan super nakakatakot. 797 00:39:09,010 --> 00:39:11,010 >> At lalo na para sa mga ng sa iyo na nag 798 00:39:11,010 --> 00:39:14,530 tumingin sa mga code ng pamamahagi, may isang pulutong ng mga code, ang isang pulutong ng code. 799 00:39:14,530 --> 00:39:15,570 Ngunit ito ay ganap na OK. 800 00:39:15,570 --> 00:39:17,750 Dahil ang kutuhin magaspang bahagi ng aktwal na paglikha 801 00:39:17,750 --> 00:39:20,140 ang server ay ginagawa sa pamamagitan amin. 802 00:39:20,140 --> 00:39:22,090 Lahat ng tunay na ikaw ay tinanong na gawin ito sa pset 803 00:39:22,090 --> 00:39:25,350 ay para lamang gawin ang ilang mga string manipulasyon in file I / O. Ito ay talagang 804 00:39:25,350 --> 00:39:27,570 tulad ng medyo simple. 805 00:39:27,570 --> 00:39:30,830 >> Kaya noong una mong i-download ang na- na dito ay aktwal na nai-download 806 00:39:30,830 --> 00:39:32,540 ang pset at kinuha ng isang pagtingin? 807 00:39:32,540 --> 00:39:33,040 Lahat tama. 808 00:39:33,040 --> 00:39:33,540 Oo. 809 00:39:33,540 --> 00:39:36,042 May tulad ng 500 mga linya ng code na kayo ay magiging tulad ng, 810 00:39:36,042 --> 00:39:36,750 Ano ang nangyayari? 811 00:39:36,750 --> 00:39:38,177 At iyon ay lubos na fine. 812 00:39:38,177 --> 00:39:39,760 Siguraduhin mong panoorin ang walk-through. 813 00:39:39,760 --> 00:39:41,610 Dahil si David at- Hindi ko alam. 814 00:39:41,610 --> 00:39:43,870 Hindi sa tingin ko ito ay Zamyla, ang isang ito. 815 00:39:43,870 --> 00:39:47,040 Ngunit sa tingin ko ang ilan sa iba pang mga walk-through ay medyo 816 00:39:47,040 --> 00:39:49,510 kapaki-pakinabang sa mga tuntunin ng paalam sa inyo 817 00:39:49,510 --> 00:39:51,780 kung ano ang nangyayari sa loob ng iyong code. 818 00:39:51,780 --> 00:39:53,330 >> At ito ay ganap ang OK. 819 00:39:53,330 --> 00:39:57,860 Dahil sa apat na mga function na ikaw ay hiniling na ipatupad kung talagang 820 00:39:57,860 --> 00:39:59,720 zero na gawin sa mga aktwal na server. 821 00:39:59,720 --> 00:40:02,590 Lahat ng kailangan nilang gawin ay lamang pag-parse ng iba't ibang mga string, 822 00:40:02,590 --> 00:40:05,780 paghahanap sa pamamagitan ng mga string, upang matiyak na bagay ay ginagawa 823 00:40:05,780 --> 00:40:07,750 kung ano ang kanilang dapat na ginagawa. 824 00:40:07,750 --> 00:40:11,200 >> Kaya sa na epekto, may mga ilang tunay, tunay na kapaki-pakinabang na function, 825 00:40:11,200 --> 00:40:13,630 lalo na para sa string pagmamanipula, na dapat namin ang lahat ng 826 00:40:13,630 --> 00:40:15,879 pumunta sa paglipas na naisip ko na gusto ko maging tunay na kapaki-pakinabang para sa iyo guys 827 00:40:15,879 --> 00:40:19,130 upang malaman bago subukang ang pset. 828 00:40:19,130 --> 00:40:23,350 At lahat sila ay nakapaloob sa loob ng iyong string.h library. 829 00:40:23,350 --> 00:40:25,980 May marahil mas kapaki-pakinabang function Hindi ko pa isinama dito, 830 00:40:25,980 --> 00:40:30,740 dahil hindi ko gamitin ang alinman sa mga ito o marahil ko lamang ay hindi alam na sila umiiral. 831 00:40:30,740 --> 00:40:32,440 >> Huwag mag-atubili na sulyap sa pamamagitan student.h. 832 00:40:32,440 --> 00:40:36,460 Dahil doon ay magiging isang pulutong ng mga function na ay napaka-kapaki-pakinabang. 833 00:40:36,460 --> 00:40:43,050 Kaya ang anim na ang pinaka-in ko bang gamitin ang aking pset kapag ako ay ginagawa ito ang nakaraang linggo 834 00:40:43,050 --> 00:40:49,620 ay strtok, strchr, strrcher, strstr, strcasecmp, at strcpy. 835 00:40:49,620 --> 00:40:53,060 At kaya ang huling dalawang ay maaaring mukhang medyo pamilyar sa karamihan ng sa iyo. 836 00:40:53,060 --> 00:40:56,910 Str case ihambing, ang lahat ng ginagawa nito ay ihambing string upang suriin ang mga ito para sa pagkakapantay-pantay, 837 00:40:56,910 --> 00:40:58,110 kabilang ang kaso. 838 00:40:58,110 --> 00:41:01,430 At strcpy lamang ng mga kopya isang string sa isang buffer. 839 00:41:01,430 --> 00:41:04,430 >> At kaya dapat ang mga dalawang mukhang tunay pamilyar sa iyo guys sa puntong ito. 840 00:41:04,430 --> 00:41:07,100 Dahil ginagamit namin ang mga ito ng isang pulutong, lalo na para sa huling psets. 841 00:41:07,100 --> 00:41:10,734 Ngunit ang unang apat na marahil hindi mo pa nakikita hanggang ngayon. 842 00:41:10,734 --> 00:41:12,400 Ngunit ako pagpunta sa paglalakad lamang sa pamamagitan ng mga ito. 843 00:41:12,400 --> 00:41:15,620 Dahil ang mga ito ay pagpunta sa gawin ang iyong buhay talagang, talagang madali for-- hindi madali, 844 00:41:15,620 --> 00:41:19,830 ngunit marami mas madali para sa mga paparating na pset. 845 00:41:19,830 --> 00:41:20,420 >> SIGE. 846 00:41:20,420 --> 00:41:27,720 Kaya char * strtok, ito ay ang pag-andar kahulugan para sa function na nakapaloob 847 00:41:27,720 --> 00:41:31,050 sa loob ng string, h library. 848 00:41:31,050 --> 00:41:34,340 Kung ikaw ay bibigyan ng isang input ng char * string, na kung saan ay lamang ng isang string, 849 00:41:34,340 --> 00:41:38,220 o ng isang pare-pareho ang char * deliminator, delim para sa maikling, 850 00:41:38,220 --> 00:41:42,410 lahat ng ito ay ginagawa ay paglabag sa mas malaking string sa isang serye ng mga ano ang tawag namin 851 00:41:42,410 --> 00:41:45,730 token na pinaghihiwalay ng isang tiyak na halaga. 852 00:41:45,730 --> 00:42:03,340 Kaya sa isang kahulugan, kung ako ay upang bigyan section.7.php mo, ito ay isang string. 853 00:42:03,340 --> 00:42:09,520 >> Kaya na magiging kung ako ay upang pumasa sa ito bilang aking str, aking char * str, 854 00:42:09,520 --> 00:42:18,870 kung ang aking deliminator ay tuldok, ang lahat ng ito Gusto gawin ay ang paghahanap sa pamamagitan ng string. 855 00:42:18,870 --> 00:42:22,790 At sa unang pagkakataon ay nakikita ito ng isang tuldok, ito ay bumalik lamang sa pointer 856 00:42:22,790 --> 00:42:25,830 sa huling token natagpuan sa string bago ito. 857 00:42:25,830 --> 00:42:27,230 Kaya ito ay pumunta dito mismo. 858 00:42:27,230 --> 00:42:30,580 >> At ito ay magbibigay lamang sa akin 7.php. 859 00:42:30,580 --> 00:42:34,070 At kung ako ay upang tawagan ang gumana nang isa pang beses, 860 00:42:34,070 --> 00:42:37,580 ito ay magbibigay sa akin lamang ang Php. 861 00:42:37,580 --> 00:42:41,540 At sa gayon ang lahat ng function na ito ay ginagawa ay paglabag down sa mas malaking string 862 00:42:41,540 --> 00:42:44,620 sa mas maliit na mga string depende sa kung ano ang iyong hinahanap. 863 00:42:44,620 --> 00:42:46,670 >> At kaya halimbawa, sa ang iyong mga function hitsura up 864 00:42:46,670 --> 00:42:49,895 kung gusto mong tingnan kung ano ang tiyak na mga character ay resulta 865 00:42:49,895 --> 00:42:54,280 o kung tuldok mangyari o mangyayari extension, mga function na ito ay medyo kapaki-pakinabang. 866 00:42:54,280 --> 00:42:57,260 867 00:42:57,260 --> 00:42:59,010 Oo. 868 00:42:59,010 --> 00:42:59,510 Huwag mag-alala. 869 00:42:59,510 --> 00:43:01,339 Ito ay ang lahat be-- oo, ano ang up? 870 00:43:01,339 --> 00:43:07,087 >> Madla: Kaya sa unang linya, kung kami ay gumagamit ng halimbawa na ito, 871 00:43:07,087 --> 00:43:09,504 ano ang gusto namin maisingit iyon? 872 00:43:09,504 --> 00:43:10,170 ANDI PENG: Oo. 873 00:43:10,170 --> 00:43:13,000 874 00:43:13,000 --> 00:43:25,640 Ikaw ay tatawag lamang ng isang strtok string comma delim. 875 00:43:25,640 --> 00:43:30,260 At string ay katumbas section.7.php. 876 00:43:30,260 --> 00:43:35,244 At pagkatapos ikaw ay delim maaaring maging pantay-pantay sa tuldok lang. 877 00:43:35,244 --> 00:43:36,654 >> Madla: OK. 878 00:43:36,654 --> 00:43:39,010 >> ANDI PENG: Oo. 879 00:43:39,010 --> 00:43:41,266 Katulad na. 880 00:43:41,266 --> 00:43:43,890 Lahat ng mga function ay medyo katulad kapag pumunta kami sa pamamagitan ng mga ito. 881 00:43:43,890 --> 00:43:45,514 Sila lamang gawin bahagyang iba't ibang mga bagay. 882 00:43:45,514 --> 00:43:49,530 Ngunit ang lahat ng ito ay pagpunta sa gumawa ng iyong buhay ng maraming mas madali. 883 00:43:49,530 --> 00:43:53,940 Second function, ang isang ito ay tulad ng super, super, super mahalaga, 884 00:43:53,940 --> 00:43:58,254 ay the-- hold up. 885 00:43:58,254 --> 00:44:07,560 886 00:44:07,560 --> 00:44:08,730 >> Oops. 887 00:44:08,730 --> 00:44:13,810 Strchr paghahanap para sa unang occurrence-- talaga, oo. 888 00:44:13,810 --> 00:44:16,385 Strchr ay ang function na Ako ay talagang lamang nagdaraan. 889 00:44:16,385 --> 00:44:18,260 Kaya huwag pansinin kung ano ang sinabi ko para sa unang function. 890 00:44:18,260 --> 00:44:20,980 Talagang Ito ay tinatawag na strchr. 891 00:44:20,980 --> 00:44:24,840 >> Kaya kung ano ang nangyari dito ay kung ikaw ay bibigyan ng isang string sa isang pansamantalang trabaho c, 892 00:44:24,840 --> 00:44:28,660 ito ay magbibigay lamang sa inyo ang anumang na. 893 00:44:28,660 --> 00:44:29,230 Oo. 894 00:44:29,230 --> 00:44:33,700 Kaya sa tingin ng mga ito bilang str, na ay isang string, at chr bilang char. 895 00:44:33,700 --> 00:44:38,621 Kaya lahat ng sinusubukan mong gawin ay ang paghahanap para kung saan ang isang char ay sa loob ng isang string. 896 00:44:38,621 --> 00:44:41,120 At kaya naghanap ito para sa unang pangyayari ng mga karakter 897 00:44:41,120 --> 00:44:43,601 c sa string str. 898 00:44:43,601 --> 00:44:46,463 >> Madla: [hindi marinig]. 899 00:44:46,463 --> 00:44:48,380 >> ANDI PENG: Yup. 900 00:44:48,380 --> 00:44:51,230 At pagkatapos ay kung hindi ito mahanap ang ito, ito ay pagpunta upang bumalik null. 901 00:44:51,230 --> 00:44:54,313 Kaya isang bagay na pagpunta sa maging tunay kapaki-pakinabang para sa iyo guys sa paggawa ng pset 902 00:44:54,313 --> 00:44:59,030 kung, halimbawa, ikaw ay naghahanap para sa isang extension tulad ng isang .docx para sa isang Word 903 00:44:59,030 --> 00:45:04,740 dokumento o isang .pdf para sa isang PDF na dokumento, maaari mong uri ng gamitin ito upang tumingin 904 00:45:04,740 --> 00:45:08,720 para sa anumang ay pagkatapos sa bawat oras na makikita mo ang isang tuldok, di ba? 905 00:45:08,720 --> 00:45:11,880 At kaya medyo marami, kung ikaw tumakbo na sa pamamagitan ng mga function, 906 00:45:11,880 --> 00:45:13,610 kung ito ay nagbabalik null, pagkatapos ay alam mo na ito 907 00:45:13,610 --> 00:45:17,292 ay hindi mahanap ito dot, na nangangahulugan na ito malinaw na ay hindi isang wastong file extension. 908 00:45:17,292 --> 00:45:19,000 O kung ito ay nagbabalik isang bagay, pagkatapos ay alam mo 909 00:45:19,000 --> 00:45:21,940 ito ay pagpunta sa bumalik kahit anong ni talagang matapos ang extension. 910 00:45:21,940 --> 00:45:24,190 Kaya mga mo na nagkaroon nagsimula naghahanap sa pamamagitan ng lookup 911 00:45:24,190 --> 00:45:28,640 at mai-parse, function na ito ni magiging sobrang kapaki-pakinabang. 912 00:45:28,640 --> 00:45:32,010 Kaya kami ay tunay na pagpunta upang ipakita ang gamit na ito. 913 00:45:32,010 --> 00:45:36,670 >> Bakit hindi ka guys subukan ang pagsusulat ng function na bool pangungusap char * s na 914 00:45:36,670 --> 00:45:39,610 nagbabalik lamang na tunay na kung s ay isang pangungusap at maling kung hindi man. 915 00:45:39,610 --> 00:45:44,110 916 00:45:44,110 --> 00:45:46,830 Kaya magparamdam, ikaw ay pagpunta upang gamitin ang marahil strchr. 917 00:45:46,830 --> 00:45:50,420 O maghanap ka na lamang sa string para sa isang tiyak na character. 918 00:45:50,420 --> 00:45:54,950 At kaya sa isang pangungusap, kung ano ang naghihiwalay sa isang pangungusap 919 00:45:54,950 --> 00:45:57,510 mula sa isang di-pangungusap, ano ang tiyak na character? 920 00:45:57,510 --> 00:45:58,260 Madla: A space. 921 00:45:58,260 --> 00:45:59,343 ANDI PENG: A space, di ba? 922 00:45:59,343 --> 00:46:03,354 At kaya kung ano ang ginagawa namin marahil pagpunta sa nais na gawin sa loob ng function na ito dito? 923 00:46:03,354 --> 00:46:04,290 >> Madla: [hindi marinig]. 924 00:46:04,290 --> 00:46:07,623 >> ANDI PENG: Kami ay pagpunta sa nais na strchr string para sa ang hitsura ng mga puwang. 925 00:46:07,623 --> 00:46:11,330 Dahil kung ito ay nagbabalik ng isang bagay, at pagkatapos ay alam namin na ito ay dapat na isang pangungusap. 926 00:46:11,330 --> 00:46:14,510 Iyon ay nangangahulugan na kailangan namin magkaroon ng isang puwang na ito sa string. 927 00:46:14,510 --> 00:46:17,660 >> Kung walang space, pagkatapos ay alam namin na, hey, hulaan ito ay hindi isang string. 928 00:46:17,660 --> 00:46:20,060 Ito ay marahil lamang ng isang talagang mahabang salita. 929 00:46:20,060 --> 00:46:23,242 Kaya Bibigyan kita ng isang lalaki ng isang pares minuto upang isulat ang function na ito. 930 00:46:23,242 --> 00:46:44,398 931 00:46:44,398 --> 00:46:45,874 Oo. 932 00:46:45,874 --> 00:46:47,970 >> Madla: kang makakuha Ibig ang string na ito mula sa mga gumagamit? 933 00:46:47,970 --> 00:46:48,440 >> ANDI PENG: Oo. 934 00:46:48,440 --> 00:46:49,565 Kaya ito ay isang function na lamang. 935 00:46:49,565 --> 00:46:54,586 Kaya isipin sa loob ng iyong pangunahing pag-andar mayroon ka nang have-- sabihin pumunta dito. 936 00:46:54,586 --> 00:47:00,040 937 00:47:00,040 --> 00:47:00,540 SIGE. 938 00:47:00,540 --> 00:47:05,270 Kaya ako ng nakasulat na programa na ito kung saan Mayroon akong aking mga pangunahing pag-andar na kung saan ang 939 00:47:05,270 --> 00:47:07,432 Lamang ko na nilikha ng dalawang mga string. 940 00:47:07,432 --> 00:47:09,890 Ang unang isa ay Hi, ang aking pangalan ay Andi-- malinaw, isang pangungusap. 941 00:47:09,890 --> 00:47:13,240 Ang aking pangalawang isa ay lamang Andi, malinaw na hindi pangungusap. 942 00:47:13,240 --> 00:47:18,390 >> At kaya ako nagpapatakbo ng parehong ng mga string sa pamamagitan ng function na ito. 943 00:47:18,390 --> 00:47:20,540 Gusto ko sa iyo guys na magsulat cold pangungusap. 944 00:47:20,540 --> 00:47:23,380 At ako sa pag-iimbak ng mga halaga, at pagkatapos lamang print ang mga ito out. 945 00:47:23,380 --> 00:47:26,549 Kaya mag-isip na ang gumagamit ay pagpunta sa pumasa sa isang string. 946 00:47:26,549 --> 00:47:29,590 At pagkatapos ang iyong pagpunta sa mahalagang malaman kung ito ay isang pangungusap o hindi 947 00:47:29,590 --> 00:47:31,131 at bumalik totoo o hindi naaayon. 948 00:47:31,131 --> 00:48:41,850 949 00:48:41,850 --> 00:48:45,200 >> Kung ikaw guys na nais na magbigay ng isang thumbs up o mga ulo up, tango ulo, 950 00:48:45,200 --> 00:48:49,080 ay kahit sino ay handa na upang simulan na ito, na ang gusto ay mabuti. 951 00:48:49,080 --> 00:50:13,570 952 00:50:13,570 --> 00:50:15,200 Siguro tulad ng 30 segundo pa? 953 00:50:15,200 --> 00:50:49,570 954 00:50:49,570 --> 00:50:50,070 Lahat tama. 955 00:50:50,070 --> 00:50:52,870 Tingnan natin kung maaari mong subukan Ipaalam pagsulat na ito function. 956 00:50:52,870 --> 00:50:57,480 >> Kaya palsipikado coding-- lamang ako ng pagpunta sa uri ng paglalakad sa pamamagitan ng mga ito sa ngayon. 957 00:50:57,480 --> 00:51:00,570 Medyo marami, alam namin ang function na kailangan namin upang gamitin. 958 00:51:00,570 --> 00:51:04,390 Kami ay pagpunta sa tawag na function sa aming string at paghahanap para sa isang space. 959 00:51:04,390 --> 00:51:08,682 Kung ito ay nagbabalik ng isang bagay, at pagkatapos ay dapat namin alam na, malinaw, ito ay isang pangungusap. 960 00:51:08,682 --> 00:51:09,640 Dahil mayroong mga puwang. 961 00:51:09,640 --> 00:51:10,930 Pagkatapos kami ay pagpunta sa nagbabalik ng tunay. 962 00:51:10,930 --> 00:51:12,310 Iba Pa, kami ay pagpunta upang bumalik false. 963 00:51:12,310 --> 00:51:14,393 Nais ba ng sinuman na magbigay ng akin ang unang linya ng code 964 00:51:14,393 --> 00:51:16,890 na aktwal na kami ay pagpunta gamitin upang isulat ang mga ito? 965 00:51:16,890 --> 00:51:19,680 Ito ay talagang ang pinakamahirap linya ng code rin. 966 00:51:19,680 --> 00:51:21,026 Oo. 967 00:51:21,026 --> 00:51:28,942 >> Madla: Kung strtok s-- 968 00:51:28,942 --> 00:51:29,900 ANDI PENG: strchr lamang. 969 00:51:29,900 --> 00:51:35,354 Madla: [INTERPOSING tinig] space ay hindi kapantay sa null. 970 00:51:35,354 --> 00:51:38,270 971 00:51:38,270 --> 00:51:40,710 >> ANDI PENG: Cool. 972 00:51:40,710 --> 00:51:41,470 Tama. 973 00:51:41,470 --> 00:51:43,200 Ang bawat maunawaan na ang unang linya? 974 00:51:43,200 --> 00:51:46,110 Kami ay pagpunta sa tumawag strstr, na kung saan ay isang function na ang mga paghahanap 975 00:51:46,110 --> 00:51:51,830 ang s string para sa mga char ng space. 976 00:51:51,830 --> 00:51:56,010 At kung ito ay hahanap ng mga ito, ito ay pagpunta sa ibalik ang isang pointer sa kung saan na. 977 00:51:56,010 --> 00:51:58,500 >> Kung ito ay hindi mahanap ito, ito ay pagpunta upang bumalik null. 978 00:51:58,500 --> 00:52:02,530 Kaya kung ito ay nagbabalik ng kahit ano maliban sa Null, pagkatapos namin kung ito ay natagpuan ang isang puwang. 979 00:52:02,530 --> 00:52:03,553 Ba na magkaroon ng kahulugan? 980 00:52:03,553 --> 00:52:04,090 Cool. 981 00:52:04,090 --> 00:52:04,590 Lahat tama. 982 00:52:04,590 --> 00:52:08,246 Kaya kung alam namin ito ay matatagpuan sa isang space, ano ang gusto naming gawin? 983 00:52:08,246 --> 00:52:09,162 Madla: Bumalik totoo. 984 00:52:09,162 --> 00:52:09,787 ANDI PENG: Yup. 985 00:52:09,787 --> 00:52:11,940 Bumalik totoo. 986 00:52:11,940 --> 00:52:15,034 At pagkatapos ay, ang isang tao ay nais na tapusin ang pag-andar para sa akin? 987 00:52:15,034 --> 00:52:16,300 Oo. 988 00:52:16,300 --> 00:52:19,720 Iba Pa, katulad nito. 989 00:52:19,720 --> 00:52:20,780 At subukan ipon na ito. 990 00:52:20,780 --> 00:52:26,071 991 00:52:26,071 --> 00:52:28,000 >> Oo. 992 00:52:28,000 --> 00:52:33,099 Kaya bilang ka guys ay maaaring makita mula sa mga output, tandaan Booleans sa C 993 00:52:33,099 --> 00:52:34,390 ay palaging ipinahayag sa binary. 994 00:52:34,390 --> 00:52:35,100 1 ay totoo. 995 00:52:35,100 --> 00:52:36,350 0 ay hindi totoo. 996 00:52:36,350 --> 00:52:39,720 >> Kung kami ay upang patakbuhin ang function sa string ng isa, na 997 00:52:39,720 --> 00:52:42,900 ay Hi, Andi-- aking pangalan malinaw, ang isang sentence-- ang resulta 998 00:52:42,900 --> 00:52:45,700 naka-print out sa 1 na kung saan ay totoo. 999 00:52:45,700 --> 00:52:48,420 Ang ikalawang isa, na kung saan ay lamang isang salita, ng resulta nakalimbag out 1000 00:52:48,420 --> 00:52:50,630 sa 0, na kung saan ay hindi totoo. 1001 00:52:50,630 --> 00:52:54,820 Ang bawat malinaw na uri ng sa kung paano mga function na ito ay isinulat? 1002 00:52:54,820 --> 00:52:55,800 Oo. 1003 00:52:55,800 --> 00:52:59,770 >> Madla: Maaari din namin na gawin, sa halip ng ay hindi pantay hindi, ay katumbas ng katumbas ng 0, 1004 00:52:59,770 --> 00:53:03,677 upang ito ay katumbas? 1005 00:53:03,677 --> 00:53:04,260 ANDI PENG: No. 1006 00:53:04,260 --> 00:53:07,480 Dahil strchr ay isang function. 1007 00:53:07,480 --> 00:53:09,940 Pupunta ako upang i-back ito. 1008 00:53:09,940 --> 00:53:14,624 Kaya kung ano ang uri ng bumalik ng ating strchr function? 1009 00:53:14,624 --> 00:53:15,332 Madla: Oh, OK. 1010 00:53:15,332 --> 00:53:15,800 O null. 1011 00:53:15,800 --> 00:53:16,466 >> ANDI PENG: Oo. 1012 00:53:16,466 --> 00:53:20,890 Ito ay isang pansamantalang trabaho * na nagsasabi sa akin na kahit anong mga function na ito ay pagpunta sa bumalik, 1013 00:53:20,890 --> 00:53:22,090 ito ay pagpunta sa maging isang pointer. 1014 00:53:22,090 --> 00:53:24,860 Alinman ang pointer ay magiging nakaturo sa kung saan ito ay natagpuan ito, 1015 00:53:24,860 --> 00:53:27,550 o ito ay pagpunta upang bumalik isang pointer sa null. 1016 00:53:27,550 --> 00:53:30,930 Sa alinmang sitwasyon, ito ay pagpunta upang magbalik ng pointer sa isang bagay. 1017 00:53:30,930 --> 00:53:34,354 >> At kaya kung ikaw ay upang equate ito ay katumbas, katumbas, 0, 1018 00:53:34,354 --> 00:53:36,020 ikaw ay pagpunta upang makakuha ng isang error compilation. 1019 00:53:36,020 --> 00:53:37,645 Dahil ito ay pagpunta upang magbalik ng pointer. 1020 00:53:37,645 --> 00:53:40,240 At ikaw ay pagpunta sa subukan upang ihambing ang isang pointer sa isang integer. 1021 00:53:40,240 --> 00:53:42,515 At ang computer ay hindi pagpunta sa katulad na. 1022 00:53:42,515 --> 00:53:45,630 Oo, eksakto. 1023 00:53:45,630 --> 00:53:46,540 Cool. 1024 00:53:46,540 --> 00:53:47,525 Ang bawat mabuti? 1025 00:53:47,525 --> 00:53:55,770 1026 00:53:55,770 --> 00:53:59,770 >> At pangalawa, kami ay pagpunta upang pumunta sa loob ng isang function na tinatawag na strstr. 1027 00:53:59,770 --> 00:54:02,020 Huwag mag-alala kung ang mga function ay nakalilito sa iyo. 1028 00:54:02,020 --> 00:54:03,750 Ang mga ito ay nakalilito sa akin. 1029 00:54:03,750 --> 00:54:07,250 Gaya ng nabanggit, ang iyong guys ay maaaring tumingin, lahat sila tunog medyo marami ang parehong. 1030 00:54:07,250 --> 00:54:10,400 Basta sa tuwing ikaw ay nalilito, hilahin pataas ang string.h library. 1031 00:54:10,400 --> 00:54:13,290 At ikaw guys maaaring ayusin sa pamamagitan ng na kung saan isang tao. 1032 00:54:13,290 --> 00:54:18,910 >> Kaya strstr, ang lahat na ang ginagawa ay mga paghahanap isang string para sa isang buong ibang string. 1033 00:54:18,910 --> 00:54:21,980 Kaya kung saan strchr lamang na paghahanap para sa isang solong character, 1034 00:54:21,980 --> 00:54:24,090 strstr paghahanap para sa isang buong string. 1035 00:54:24,090 --> 00:54:30,440 Kaya ko nais upang tumingin sa, hindi ako alam, Hi, ang aking pangalan ay Andi. 1036 00:54:30,440 --> 00:54:32,490 At ang pangalan ng aking matalik na kaibigan ay din Andi. 1037 00:54:32,490 --> 00:54:37,180 >> Kung gusto ko upang tumingin para sa mga ito pangungusap para sa buong salita ng Andi, 1038 00:54:37,180 --> 00:54:39,930 sana ay naging aking karayom anumang ikaw ay naghahanap para sa. 1039 00:54:39,930 --> 00:54:43,440 At ang iyong mga haystack ay kahit na ano naghahanap ka ng mga ito sa loob. 1040 00:54:43,440 --> 00:54:47,050 Kaya't kung ikaw ay naghahanap para sa isang tiyak na salita sa loob ng isang pangungusap, 1041 00:54:47,050 --> 00:54:48,800 ang salitang iyon ay magiging iyong karayom. 1042 00:54:48,800 --> 00:54:51,397 At pagkatapos ay ang kanyang sarili na pangungusap ay magiging iyong haystack. 1043 00:54:51,397 --> 00:54:53,230 At kaya naghanap ito lamang ang unang paglitaw 1044 00:54:53,230 --> 00:54:55,063 ng string karayom sa string haystack. 1045 00:54:55,063 --> 00:54:57,140 Ibinabalik nito ang pointer sa unang paglitaw. 1046 00:54:57,140 --> 00:55:00,510 Maliban, tandaan na sa kasong ito, ito ay ang unang paglitaw ng buong string 1047 00:55:00,510 --> 00:55:02,510 na kayo ay naghahanap para sa, hindi lamang ng isang character. 1048 00:55:02,510 --> 00:55:04,676 >> At kaya ito ay halos ang parehong bagay bilang ang function 1049 00:55:04,676 --> 00:55:09,100 lang namin ginawa, lamang na may ng kaunti pang pagtitiyak. 1050 00:55:09,100 --> 00:55:12,730 Dahil ikaw ay naghahanap para sa higit sa isang character lamang. 1051 00:55:12,730 --> 00:55:16,310 At ang paggamit ay ang eksaktong parehong bilang isa na lang namin ginawa. 1052 00:55:16,310 --> 00:55:18,070 Ang bawat OK na ito? 1053 00:55:18,070 --> 00:55:20,250 SIGE. 1054 00:55:20,250 --> 00:55:23,560 >> Huling isa namin ang pagpunta upang pumunta higit ay strrchr, na kung saan ay hindi 1055 00:55:23,560 --> 00:55:26,320 malito strstr o may strchr. 1056 00:55:26,320 --> 00:55:27,890 strrchr ay may dagdag na r in doon. 1057 00:55:27,890 --> 00:55:29,140 Mag-ingat kapag nagta-type ka. 1058 00:55:29,140 --> 00:55:33,851 Maaari mong mahanap ang iyong sarili kasama ng dagdag na r o hindi kabilang ang isang r, 1059 00:55:33,851 --> 00:55:35,850 at pagkatapos ang iyong mga function ay hindi pagpunta Nakakuha upang gumana. 1060 00:55:35,850 --> 00:55:37,183 At ikaw ay pagpunta sa matulig. 1061 00:55:37,183 --> 00:55:40,150 Mag-ingat na kayo ay pagbaybay lahat ng mga function ng karapatan. 1062 00:55:40,150 --> 00:55:43,770 >> Kaya strrchr ay ang eksaktong parehong bagay bilang strchr 1063 00:55:43,770 --> 00:55:47,480 maliban hahanapin nito hindi ang unang pangyayari ng isang tiyak na character, 1064 00:55:47,480 --> 00:55:49,350 ngunit sa halip ang huling paglitaw. 1065 00:55:49,350 --> 00:55:52,800 At ito, sa kamalayan na, ito ay halos ang eksaktong parehong. 1066 00:55:52,800 --> 00:55:54,620 Ngunit sa halip ng paglipat ipasa sa isang string, 1067 00:55:54,620 --> 00:55:57,230 ikaw ay pagpunta sa paglipat paurong sa isang string. 1068 00:55:57,230 --> 00:56:00,510 Eksaktong parehong bagay, ikaw lamang naghahanap sa isang iba't ibang mga order. 1069 00:56:00,510 --> 00:56:04,690 >> At kaya ito ay maaaring sobrang, sobrang kapaki-pakinabang para sa iyong lookup 1070 00:56:04,690 --> 00:56:07,490 function, ang unang function sa iyong pset. 1071 00:56:07,490 --> 00:56:12,710 Magpanggap Hayaan na kailangan namin upang makapagsulat ng isang function ng void extension na kung saan namin 1072 00:56:12,710 --> 00:56:17,850 pumasa sa isang pare-pareho ang char name * file, lamang ng isang string, ang isang pangalan ng file, 1073 00:56:17,850 --> 00:56:21,370 na tumatagal sa pangalang iyon at ng mga kopya out ang extension ng file na iyon. 1074 00:56:21,370 --> 00:56:26,520 Kaya halimbawa, kung ako ay upang At mangyayari sa mga string ng pset7.zip, 1075 00:56:26,520 --> 00:56:30,004 ito ay pagpunta sa i-print out lang mga extension, na kung saan ay .zip. 1076 00:56:30,004 --> 00:56:31,920 At ito ay gumagana para sa anumang uri ng mga extension, 1077 00:56:31,920 --> 00:56:38,290 .docx para sa Word o .pdf para sa isang PDF maghain o .html para sa isang file na HTML. 1078 00:56:38,290 --> 00:56:40,425 Medyo marami, magsulat ng isang function na maaaring gawin na. 1079 00:56:40,425 --> 00:56:42,300 Talagang ako pagpunta sa lilipat papunta sa IDE. 1080 00:56:42,300 --> 00:56:54,560 1081 00:56:54,560 --> 00:56:56,740 Ito ay hindi load-- doon kami pumunta. 1082 00:56:56,740 --> 00:57:00,990 >> Kaya lahat ng nagawa ko dito ay lumikha ng isang pansamantalang trabaho *, first string, 1083 00:57:00,990 --> 00:57:01,930 tinatawag pset7.zip. 1084 00:57:01,930 --> 00:57:04,530 Pupunta ako upang mag-zoom in. 1085 00:57:04,530 --> 00:57:08,520 Lumikha ako ng isang pangalawang string tinatawag finalpaper.docx. 1086 00:57:08,520 --> 00:57:12,649 At sumulat sa akin ng isang function na kapag tinatawag ay pagpunta upang i-print out lang 1087 00:57:12,649 --> 00:57:13,690 ang mga extension ng file name. 1088 00:57:13,690 --> 00:57:16,702 1089 00:57:16,702 --> 00:57:19,660 Siguro tumagal ng ilang minuto upang isipin tungkol sa kung paano ka ng pagpunta sa gawin ito. 1090 00:57:19,660 --> 00:57:22,510 Bahagyang mas mahirap kaysa sa huling isa, 1091 00:57:22,510 --> 00:57:24,770 ngunit ang paggamit ay halos eksaktong pareho. 1092 00:57:24,770 --> 00:57:29,670 1093 00:57:29,670 --> 00:57:30,170 Oo. 1094 00:57:30,170 --> 00:57:37,540 Kaya magsulat ng isang function na tinatawag na extension na, kung ang ibinibigay ko sa iyo ang pangalan ng isang file, 1095 00:57:37,540 --> 00:57:41,340 kung ako ay upang bigyan pset7.zip-- mo ako gusto mong i-print out lang ang .zip. 1096 00:57:41,340 --> 00:57:45,040 1097 00:57:45,040 --> 00:57:49,890 Kung bigyan ako mo finalpaper.docx, i-print lamang ang mga .docx, 1098 00:57:49,890 --> 00:57:51,538 lamang ang extension ng kahit anong file. 1099 00:57:51,538 --> 00:59:03,720 1100 00:59:03,720 --> 00:59:07,790 >> Ito ang tunay na lamang tumatagal ng dalawang linya ng code. 1101 00:59:07,790 --> 00:59:10,692 Kaya subukan upang makita kung ikaw Maaari siguro gawin ito sa na. 1102 00:59:10,692 --> 00:59:12,400 Talaga, ito lamang tumatagal ng isang linya ng code. 1103 00:59:12,400 --> 00:59:14,074 Ngunit dalawang linya ay malamang na mas standard. 1104 00:59:14,074 --> 00:59:20,408 1105 00:59:20,408 --> 00:59:22,574 Ano ang function na kami ay marahil pagpunta sa nais na tawagan? 1106 00:59:22,574 --> 00:59:25,286 1107 00:59:25,286 --> 00:59:26,260 >> Madla: strrchr. 1108 00:59:26,260 --> 00:59:27,343 >> ANDI PENG: strrchr, right. 1109 00:59:27,343 --> 00:59:29,570 Dahil kami ay naghahanap mula sa kanan pakaliwa. 1110 00:59:29,570 --> 00:59:32,107 1111 00:59:32,107 --> 00:59:33,940 Hindi ko ibigay sa iyo guys isang halimbawa na ito, 1112 00:59:33,940 --> 00:59:38,870 ngunit kung ako nagbigay sa iyo ng isang halimbawa tulad ng www.apple.com at gusto ko lang 1113 00:59:38,870 --> 00:59:43,005 ang .com, gusto ito ay isang halimbawa ng kung saan na nais mong tawagan ang huling pagkakataon 1114 00:59:43,005 --> 00:59:44,630 ng panahon at hindi ang unang, tama? 1115 00:59:44,630 --> 00:59:47,470 Kung kayo ay call strchr, ito Gusto ko na ibinigay sa iyo ng apple.com. 1116 00:59:47,470 --> 00:59:49,966 >> Kung tinawag mo strrchr, ito ikaw ay bibigyan ng .com. 1117 00:59:49,966 --> 00:59:53,062 At kaya maging maingat sa kung aling mga ways-- sa aking halimbawa, 1118 00:59:53,062 --> 00:59:55,520 maaari mong marahil ay maaaring magkaroon ng nakasulat lang ito gamit strchr, 1119 00:59:55,520 --> 00:59:57,130 dahil mayroon lamang isang tuldok. 1120 00:59:57,130 --> 00:59:59,790 Ngunit sa ibang mga pagkakataon, na maaaring hindi ito ang kaso. 1121 00:59:59,790 --> 01:00:04,960 At kaya laging subukan na disenyo ang iyong code na rin, kaya na- oo? 1122 01:00:04,960 --> 01:00:07,365 >> Madla: Kaya sa Halimbawa sinabi mo lang, 1123 01:00:07,365 --> 01:00:11,760 kapag kayo ay strrchr gagawin ito bigyan Com mo o lamang dumating? 1124 01:00:11,760 --> 01:00:13,960 >> ANDI PENG: Ito ay magbibigay sa iyo ng .com. 1125 01:00:13,960 --> 01:00:14,794 >> Madla: OK. 1126 01:00:14,794 --> 01:00:15,460 ANDI PENG: Oo. 1127 01:00:15,460 --> 01:00:18,090 1128 01:00:18,090 --> 01:00:19,744 Ito mga puntos sa kung saan ito natagpuan ito. 1129 01:00:19,744 --> 01:00:20,244 Oo. 1130 01:00:20,244 --> 01:00:24,120 1131 01:00:24,120 --> 01:00:25,188 30 segundo siguro? 1132 01:00:25,188 --> 01:00:25,688 Oo. 1133 01:00:25,688 --> 01:00:56,640 1134 01:00:56,640 --> 01:00:58,500 Ang bawat mabuti o marahil ng kaunti pang panahon? 1135 01:00:58,500 --> 01:01:01,057 1136 01:01:01,057 --> 01:01:01,640 Ipakita ng mga kamay? 1137 01:01:01,640 --> 01:01:02,320 Ipakita ng ulo? 1138 01:01:02,320 --> 01:01:04,801 1139 01:01:04,801 --> 01:01:05,300 Cool. 1140 01:01:05,300 --> 01:01:07,924 Sinuman na nais upang bigyan ang unang akin linya ng code para sa programang ito? 1141 01:01:07,924 --> 01:01:11,861 1142 01:01:11,861 --> 01:01:12,777 Madla: [hindi marinig]. 1143 01:01:12,777 --> 01:01:16,190 1144 01:01:16,190 --> 01:01:20,160 >> ANDI PENG: So una sa lahat, ni siguro break na ito down ipaalam. 1145 01:01:20,160 --> 01:01:24,370 Kaya kung ano ang uri ng return of strrchr? 1146 01:01:24,370 --> 01:01:26,150 Bumalik tayo. 1147 01:01:26,150 --> 01:01:29,015 strrchr, ano ang uri ng bumalik? 1148 01:01:29,015 --> 01:01:29,640 Madla: char * 1149 01:01:29,640 --> 01:01:31,270 ANDI PENG: Ito ay isang pansamantalang trabaho *, di ba? 1150 01:01:31,270 --> 01:01:35,760 Na nangangahulugan na ikaw ay marahil pagpunta sa nais na lumikha ng isa pang char * sa uri 1151 01:01:35,760 --> 01:01:40,400 ng store sa tuwing ito ay pagbabalik sa, right? 1152 01:01:40,400 --> 01:01:43,200 Dahil kung ikaw ay tumawag ang function strrchr, 1153 01:01:43,200 --> 01:01:47,030 ito ay pagpunta upang bigyan ka ng isang pointer sa saan man ito na natagpuan na ang huling panahon, 1154 01:01:47,030 --> 01:01:47,580 right? 1155 01:01:47,580 --> 01:01:49,913 >> Ngunit ikaw ay pagpunta sa nais na imbak na sa isang lugar, di ba? 1156 01:01:49,913 --> 01:01:52,612 At kaya paano namin code ito sa aming programa? 1157 01:01:52,612 --> 01:01:54,320 Madla: Gumawa ka ang char * [hindi marinig]. 1158 01:01:54,320 --> 01:01:55,240 ANDI PENG: Yep. 1159 01:01:55,240 --> 01:01:57,120 Madla: [hindi marinig]. 1160 01:01:57,120 --> 01:01:58,000 ANDI PENG: strrchr. 1161 01:01:58,000 --> 01:01:58,390 Oo. 1162 01:01:58,390 --> 01:01:59,306 Oh, hindi nakuha ng isang r doon. 1163 01:01:59,306 --> 01:02:02,877 Madla: Pangalan ng File [hindi marinig]. 1164 01:02:02,877 --> 01:02:03,376 Ano ito? 1165 01:02:03,376 --> 01:02:04,420 Oh, Lamang ito s. 1166 01:02:04,420 --> 01:02:04,940 >> ANDI PENG: Oh, ito lamang ay s. 1167 01:02:04,940 --> 01:02:05,610 Yup, sorry. 1168 01:02:05,610 --> 01:02:06,330 Pagkakamali ko. 1169 01:02:06,330 --> 01:02:08,370 Mga halimbawa ay hindi tumugma sa. 1170 01:02:08,370 --> 01:02:12,130 >> Madla: At pagkatapos ay tuldok. 1171 01:02:12,130 --> 01:02:13,970 >> ANDI PENG: Yup. 1172 01:02:13,970 --> 01:02:16,570 Mag-ingat kapag ikaw guys are-- dito, hayaan mo akong mag-zoom in. 1173 01:02:16,570 --> 01:02:22,355 1174 01:02:22,355 --> 01:02:24,400 Mayroon kaming pumunta. 1175 01:02:24,400 --> 01:02:26,770 Mag-ingat kapag ikaw guys ay type, lalo na kapag 1176 01:02:26,770 --> 01:02:27,920 ikaw ay gumagawa ng isang pansamantalang trabaho lamang. 1177 01:02:27,920 --> 01:02:32,480 Ito ay talagang madaling sinasadyang lamang gawin double quotes sa halip na single. 1178 01:02:32,480 --> 01:02:35,212 >> Iyon ay hindi gagana. 1179 01:02:35,212 --> 01:02:36,670 Ang iyong tagatala ay pagpunta sa magreklamo. 1180 01:02:36,670 --> 01:02:38,790 At ang iyong mga function ay hindi lamang ang pagpunta upang tumakbo. 1181 01:02:38,790 --> 01:02:40,540 At kaya maging maingat kapag ikaw ay gumagawa ng mga bagay-bagay 1182 01:02:40,540 --> 01:02:42,622 may karakter na ito ay single quotes. 1183 01:02:42,622 --> 01:02:44,830 At sa gayon ay ang linyang ito ng code magkaroon ng kahulugan sa lahat ng tao? 1184 01:02:44,830 --> 01:02:46,810 Kami ay ang paglikha ng isang pansamantalang trabaho * pointer. 1185 01:02:46,810 --> 01:02:50,310 Dahil strrchr nagbabalik isang bagay ng uri pointer. 1186 01:02:50,310 --> 01:02:53,440 >> At kaya kami ay pagpunta sa tumawag strchr on s, kung saan ay ang string, ang file 1187 01:02:53,440 --> 01:02:55,140 pangalan, na kami ay pagpasa sa. 1188 01:02:55,140 --> 01:02:59,750 At kami ay naghahanap para sa huling halimbawa ng isang tagal ng panahon, na kung saan ay 1189 01:02:59,750 --> 01:03:02,200 lamang ang nag-iisang quote dot single quote. 1190 01:03:02,200 --> 01:03:02,700 Oo. 1191 01:03:02,700 --> 01:03:05,180 >> Madla: Kapag ginagamit namin double quotes at kapag nagawa na ginagamit namin single quotes? 1192 01:03:05,180 --> 01:03:05,320 >> ANDI PENG: Oo. 1193 01:03:05,320 --> 01:03:07,180 Kaya double quotes ay laging ginagamit kapag ikaw 1194 01:03:07,180 --> 01:03:10,120 magkaroon ng isang string ng higit pa sa isa. 1195 01:03:10,120 --> 01:03:13,070 Kaya't kung ikaw ay gumagawa ng strstr, kung saan ay ang isa na kayo 1196 01:03:13,070 --> 01:03:16,320 maghanap ng isang string para sa string, ikaw ay pumasa ito sa loob ng double quotes. 1197 01:03:16,320 --> 01:03:18,070 Ngunit anumang oras ito lamang isang solong character, 1198 01:03:18,070 --> 01:03:19,870 na nais mong gawin single quotes. 1199 01:03:19,870 --> 01:03:22,880 >> Ito ay isang magandang bagay na dapat tandaan. 1200 01:03:22,880 --> 01:03:25,864 Kaya ngayon na mayroon kami sa aming pointer, ano ang gagawin namin sa mga ito? 1201 01:03:25,864 --> 01:03:27,780 Hinihiling ko sa inyo guys sa pag-print ito, right? 1202 01:03:27,780 --> 01:03:30,940 Kaya [hindi marinig], gusto mong bigyan ako ang linya ng code? 1203 01:03:30,940 --> 01:03:31,780 >> Madla: printf-- 1204 01:03:31,780 --> 01:03:32,446 >> ANDI PENG: Oo. 1205 01:03:32,446 --> 01:03:35,344 1206 01:03:35,344 --> 01:03:36,843 Madla: kailangan --You isang may-hawak ng lugar. 1207 01:03:36,843 --> 01:03:37,340 ANDI PENG: Yup. 1208 01:03:37,340 --> 01:03:38,334 Madla: I-print ang may-hawak ng lugar. 1209 01:03:38,334 --> 01:03:40,322 Hindi ko alam kung ano ang lugar holder ay ngunit point na ito. 1210 01:03:40,322 --> 01:03:40,819 >> SIGE. 1211 01:03:40,819 --> 01:03:42,027 Ni laktawan na para sa ngayon at pagkatapos ay hayaan. 1212 01:03:42,027 --> 01:03:44,556 Madla: At pagkatapos comma-- 1213 01:03:44,556 --> 01:03:45,720 >> ANDI PENG: Pointer, di ba? 1214 01:03:45,720 --> 01:03:47,970 >> Madla: Pointer, yup. 1215 01:03:47,970 --> 01:03:51,140 >> ANDI PENG: So uri ng isang kahanga-hangang gawa tanong, ay may kinalaman sa mga payo at mga string 1216 01:03:51,140 --> 01:03:53,130 na uri ng na-usapan natin ang tungkol na. 1217 01:03:53,130 --> 01:03:57,766 Anong uri ng mga may-hawak ng lugar ang ginagawa namin kailangan para sa isang pointer para sa isang pansamantalang trabaho *? 1218 01:03:57,766 --> 01:03:59,574 >> Madla: [hindi marinig]. 1219 01:03:59,574 --> 01:04:00,240 ANDI PENG: Oo. 1220 01:04:00,240 --> 01:04:02,522 Ito ay mas madali kaysa sa tingin mo guys na ito ay. 1221 01:04:02,522 --> 01:04:03,230 Madla: String? 1222 01:04:03,230 --> 01:04:04,730 ANDI PENG: Ito ay isang string lang, eksakto. 1223 01:04:04,730 --> 01:04:06,595 Dahil tandaan string hindi tunay na umiiral. 1224 01:04:06,595 --> 01:04:09,430 Ang isang pansamantalang trabaho * ay ang eksaktong parehong bagay bilang isang string. 1225 01:04:09,430 --> 01:04:14,461 At kaya talagang ito s ay kung ano ang dapat ay ginagamit sa lahat ng mga kasama. 1226 01:04:14,461 --> 01:04:14,960 SIGE. 1227 01:04:14,960 --> 01:04:17,810 >> Tingnan natin kung maaari naming subukang patakbuhin natin ito. 1228 01:04:17,810 --> 01:04:19,450 Gawin ng isang extension make Hayaan. 1229 01:04:19,450 --> 01:04:22,710 1230 01:04:22,710 --> 01:04:23,396 Cool. 1231 01:04:23,396 --> 01:04:28,830 Ikaw guys makita kung paano ako nakapasa sa psset7.zip at ang finalpaper.docx, 1232 01:04:28,830 --> 01:04:32,500 at mga kopya lamang ito .zip at ang .docx? 1233 01:04:32,500 --> 01:04:34,150 Magkaroon ng kahulugan? 1234 01:04:34,150 --> 01:04:36,660 >> OK Kaya tingin ko sa iyong hitsura up function sa iyong pset ikaw 1235 01:04:36,660 --> 01:04:41,050 pagpunta sa ay nagtanong kung ang string ay may isang tiyak na nagtatapos, 1236 01:04:41,050 --> 01:04:42,800 kailangan mong magbigay ng isang tiyak na code error. 1237 01:04:42,800 --> 01:04:44,820 At kaya ito ay medyo nakalulungkot. 1238 01:04:44,820 --> 01:04:47,350 Dahil kung maaari mong malaman kung ano ang mga extension ay, 1239 01:04:47,350 --> 01:04:49,810 maaari mong pagkatapos ay ihambing na extension upang makita kung ito ay tumutugma up 1240 01:04:49,810 --> 01:04:51,251 may isang tiyak na extension. 1241 01:04:51,251 --> 01:04:53,250 At pagkatapos ay maaari kang bumalik isang mensahe ng error, tama? 1242 01:04:53,250 --> 01:04:53,860 Oo. 1243 01:04:53,860 --> 01:04:55,370 >> Madla: Kaya hindi namin kailangang magdagdag ng 1 o kahit ano? 1244 01:04:55,370 --> 01:04:56,530 Pointer ay pumunta sa the-- 1245 01:04:56,530 --> 01:04:56,660 >> ANDI PENG: Hindi. 1246 01:04:56,660 --> 01:04:57,530 >> Madla: --point matapos na ito. 1247 01:04:57,530 --> 01:04:58,196 >> ANDI PENG: Oo. 1248 01:04:58,196 --> 01:05:00,650 Ito mga puntos eksaktong upang kung saan ang mga kaganapan ay. 1249 01:05:00,650 --> 01:05:04,010 Kaya halimbawa dito, hindi namin na naghahanap para sa tagal ng panahon. 1250 01:05:04,010 --> 01:05:06,597 Kaya ito ay pagpunta upang bumalik isang pointer sa panahon. 1251 01:05:06,597 --> 01:05:08,930 At pagkatapos ito ay pagpunta sa i-print out simula sa panahon. 1252 01:05:08,930 --> 01:05:10,260 >> Kaya hindi mo na kailangang magdagdag ng 1. 1253 01:05:10,260 --> 01:05:15,000 Kahit na, ito ay ganap na multa na, kung hindi ka sigurado, na uri lamang 1254 01:05:15,000 --> 01:05:16,070 ng pagsubok na ito sa iyong sarili. 1255 01:05:16,070 --> 01:05:17,590 Bumuo ng isang sample na programa. 1256 01:05:17,590 --> 01:05:20,240 Subukan ito sa iyong sarili at makita kung saan ito ay pag-print. 1257 01:05:20,240 --> 01:05:23,380 Iyon din hindi isang masamang paraan upang gawin ito. 1258 01:05:23,380 --> 01:05:26,040 >> Cool. 1259 01:05:26,040 --> 01:05:28,880 At iyon ang halos lahat Nagkaroon na ako para sa iyo guys ngayon. 1260 01:05:28,880 --> 01:05:31,440 1261 01:05:31,440 --> 01:05:33,300 Ginawa namin ang isang pulutong ng pset stuff ngayon. 1262 01:05:33,300 --> 01:05:35,720 Kaya kapag may pagdududa, tulad ng Sinabi ko, laging maghanap 1263 01:05:35,720 --> 01:05:37,620 ang string.h library para sa pset. 1264 01:05:37,620 --> 01:05:40,370 May pupuntahan maging ng maraming function sa doon na maaaring maging kapaki-pakinabang. 1265 01:05:40,370 --> 01:05:41,300 Ang ilan ay maaaring maging kapaki-pakinabang. 1266 01:05:41,300 --> 01:05:42,133 Hindi ko talaga alam. 1267 01:05:42,133 --> 01:05:44,370 Wade sa pamamagitan nito, may isang buong grupo ng mga ito. 1268 01:05:44,370 --> 01:05:49,100 strstr, strchr, strrchr ay super, super helpful, pati na rin ang 1269 01:05:49,100 --> 01:05:52,080 ang strcpys at strcasecmps na mayroon na ginamit namin. 1270 01:05:52,080 --> 01:05:56,510 >> Ito lang ang pulutong ng panggugulo sa paligid na may string, pagtukoy kung ang mga ito ay pantay-pantay, 1271 01:05:56,510 --> 01:05:59,960 pagkuha ng mga bagay-bagay sa labas ng string, at ma-buksan ang tama files. 1272 01:05:59,960 --> 01:06:02,252 Ito ay isang pulutong ng mga file I / O. pset ay talagang hindi na masama. 1273 01:06:02,252 --> 01:06:04,210 Ikaw ay pagpunta sa tumagal ng isang tingnan ang mga ito, i-download ito, 1274 01:06:04,210 --> 01:06:05,590 at makita ang maramihang mga code. 1275 01:06:05,590 --> 01:06:09,220 Huwag mag-alala, ang code mo tunay na sumulat ay hindi masama sa lahat. 1276 01:06:09,220 --> 01:06:12,870 Kung sinuman ay may mga isyu sa kanilang server, dumating makita ako pagkatapos ng seksyon. 1277 01:06:12,870 --> 01:06:16,040 >> Humihingi ng paumanhin sa sandaling muli para sa hindi nagdadala ng kendi sa Halloween. 1278 01:06:16,040 --> 01:06:18,790 Hindi ko alam kung ano ang mali sa akin. 1279 01:06:18,790 --> 01:06:20,800 Ngunit kami ay may double ang kendi sa susunod na pagkakataon. 1280 01:06:20,800 --> 01:06:25,620 At good luck sa iyong pset sa linggong ito. 1281 01:06:25,620 --> 01:06:27,170 Oo. 1282 01:06:27,170 --> 01:06:28,722