1 00:00:00,000 --> 00:00:00,440 2 00:00:00,440 --> 00:00:00,860 >> SPEAKER 1: Baiklah. 3 00:00:00,860 --> 00:00:03,260 Bahwa program terakhir adalah sedikit membosankan. 4 00:00:03,260 --> 00:00:05,510 Mari kita pergi ke depan dan personalisasi ini sedikit. 5 00:00:05,510 --> 00:00:07,710 Alih-alih untuk menyapa dunia, mengapa kita tidak pergi ke depan 6 00:00:07,710 --> 00:00:09,680 dan mengatakan, halo David? 7 00:00:09,680 --> 00:00:12,500 Nah, untuk melakukan hal ini, saya bisa mendekati ini dalam beberapa cara. 8 00:00:12,500 --> 00:00:15,760 Aku bisa, tentu saja, hanya kode keras David, tapi itu tidak semua yang 9 00:00:15,760 --> 00:00:17,650 fundamental berbeda dari versi terakhir. 10 00:00:17,650 --> 00:00:21,430 Jadi mari kita mengambil lompatan maju, membatalkan bahwa berubah, dan bukannya memasukkan baru 11 00:00:21,430 --> 00:00:23,980 baris kode di mana garis lima dulu. 12 00:00:23,980 --> 00:00:28,970 >> Secara khusus, apa yang akan saya lakukan di sini adalah menambahkan nama tali, sehingga 13 00:00:28,970 --> 00:00:30,920 mendeklarasikan variabel. 14 00:00:30,920 --> 00:00:34,240 Perhatikan bahwa dalam C, tidak hanya Anda miliki untuk memberikan variabel nama, yang dalam 15 00:00:34,240 --> 00:00:38,110 hal ini adalah nama, Anda juga harus untuk menentukan apa jenis itu. 16 00:00:38,110 --> 00:00:41,970 Kita akan melihat jenis lain sebelum lama, antara mereka integer dan floating point 17 00:00:41,970 --> 00:00:46,480 nilai-nilai dan lebih, tetapi untuk sekarang, tali hanya sebuah kata atau frase, lebih 18 00:00:46,480 --> 00:00:49,340 formal, urutan nol atau lebih karakter. 19 00:00:49,340 --> 00:00:53,760 Jadi pada saat ini, baris ini adalah lima demikian: beri saya sebuah variabel yang disebut nama 20 00:00:53,760 --> 00:00:56,560 yang tipe data string. 21 00:00:56,560 --> 00:01:00,460 >> Sekarang, saya ingin menyimpan nilai di sana, dan untuk melakukan itu di C, kita menggunakan yang sama 22 00:01:00,460 --> 00:01:03,030 menandatangani, atau dikenal sebagai operator penugasan. 23 00:01:03,030 --> 00:01:04,860 Jadi aku akan lanjutkan sebagai berikut. 24 00:01:04,860 --> 00:01:10,220 Sama kutipan, tanda kutip, D-A-V-I-D, quote tertutup, titik koma. 25 00:01:10,220 --> 00:01:15,595 Efek bersih sejalan lima sekarang adalah menyatakan string, D-A-V-I-D, menyimpan 26 00:01:15,595 --> 00:01:19,480 dari sisi kanan ini ekspresi ke variabel pada 27 00:01:19,480 --> 00:01:21,480 sisi kiri ungkapan ini. 28 00:01:21,480 --> 00:01:25,970 Jadi pada akhir baris ini, kita memiliki D-A-V-I-D disimpan dalam variabel 29 00:01:25,970 --> 00:01:27,450 disebut nama. 30 00:01:27,450 --> 00:01:28,910 >> Sekarang mari kita gunakan variabel ini. 31 00:01:28,910 --> 00:01:35,010 On line enam, aku akan menggantikan dunia dengan pengganti. 32 00:01:35,010 --> 00:01:39,960 % S didefinisikan sesuai dengan dokumentasi untuk printf sebagai sebuah 33 00:01:39,960 --> 00:01:41,690 placeholder untuk string. 34 00:01:41,690 --> 00:01:44,620 Dengan kata lain, ini adalah cara menginformasikan printf bahwa aku akan menempatkan 35 00:01:44,620 --> 00:01:47,930 beberapa nilai lain di sini, tapi biarkan aku memberitahu Anda hanya dalam beberapa saat apa 36 00:01:47,930 --> 00:01:49,180 itu akan menjadi. 37 00:01:49,180 --> 00:01:52,800 Sekarang, bagaimana saya melanjutkan untuk memberitahu printf apa nilai yang akan menjadi? 38 00:01:52,800 --> 00:01:56,850 >> Yah, saya harus memberikan printf dengan argumen kedua, dan untuk itu, saya 39 00:01:56,850 --> 00:02:00,460 harus menempatkan koma setelah yang pertama seperti argumen, yang ini dikutip 40 00:02:00,460 --> 00:02:04,990 tali, dan kemudian saya harus menentukan apa nilai yang saya ingin plug ke yang 41 00:02:04,990 --> 00:02:07,010 placeholder argumen pertama. 42 00:02:07,010 --> 00:02:10,880 Jadi nama variabel saya, dari Tentu saja, nama, sehingga cukup untuk mengetik 43 00:02:10,880 --> 00:02:14,000 "Nama" sebagai yang kedua argumen untuk printf. 44 00:02:14,000 --> 00:02:15,070 Sekarang jangan disesatkan. 45 00:02:15,070 --> 00:02:20,440 Meskipun ada koma dalam string yang dikutip, yang memang 46 00:02:20,440 --> 00:02:24,370 dalam string sehingga tidak memisahkan satu argumen dari yang lain. 47 00:02:24,370 --> 00:02:28,740 Hanya koma ini yang di luar itu dikutip string yang benar-benar memisahkan 48 00:02:28,740 --> 00:02:31,700 argumen pertama printf itu dari argumen kedua. 49 00:02:31,700 --> 00:02:34,270 >> Sekarang mari kita mengkompilasi program ini. 50 00:02:34,270 --> 00:02:36,500 Membuat halo satu. 51 00:02:36,500 --> 00:02:39,570 Oh ya ampun, lima kesalahan yang dihasilkan, dan program saya 52 00:02:39,570 --> 00:02:41,100 hanya tujuh baris. 53 00:02:41,100 --> 00:02:44,720 Yah, seperti biasa, tidak melihat yang terakhir kesalahan pada layar Anda. 54 00:02:44,720 --> 00:02:47,960 Lihatlah pertama karena mungkin ada efek Cascading dimana 55 00:02:47,960 --> 00:02:51,600 hanya satu kesalahan di bagian atas menciptakan munculnya kesalahan lebih dari sana 56 00:02:51,600 --> 00:02:52,570 sebenarnya. 57 00:02:52,570 --> 00:02:56,620 >> Jadi biarkan aku gulir ke atas, dan pertama kalinya error boldfaced sini adalah penggunaan 58 00:02:56,620 --> 00:02:59,140 dideklarasikan string identifier. 59 00:02:59,140 --> 00:03:00,630 Apakah maksud Anda standar? 60 00:03:00,630 --> 00:03:01,990 Yah tidak, aku tidak. 61 00:03:01,990 --> 00:03:06,700 Saya melakukan berarti string, tapi ternyata aku lupa string yang tidak ada sebagai 62 00:03:06,700 --> 00:03:10,830 Data teknis ketik di C. Secara konseptual itu ada, tapi kata 63 00:03:10,830 --> 00:03:16,210 "String" hanya ada karena CS50 Staf telah menyatakan hal itu, sehingga untuk berbicara, 64 00:03:16,210 --> 00:03:18,160 dalam sebuah file yang kita sendiri aja. 65 00:03:18,160 --> 00:03:22,540 Bahkan, seperti halnya seseorang lama menyatakan fungsi printf dalam file 66 00:03:22,540 --> 00:03:28,310 disebut Standard io.h, begitu juga kita yang Staf menyatakan string sebagai tipe data dalam 67 00:03:28,310 --> 00:03:32,470 file itu, tidak mengherankan, disebut CS50.H. 68 00:03:32,470 --> 00:03:36,340 >> Jadi mari kita kembali ke bagian atas saya program dan menginformasikan compiler yang 69 00:03:36,340 --> 00:03:40,130 tidak hanya saya ingin menggunakan simbol String, saya juga ingin mendidik 70 00:03:40,130 --> 00:03:42,160 compiler apa artinya simbol itu. 71 00:03:42,160 --> 00:03:47,010 Dan untuk melakukan itu cukup sederhana, aku bisa pergi kembali ke baris satu, menyisipkan baris baru 72 00:03:47,010 --> 00:03:54,070 di sini, dan menambahkan, "termasuk CS50.H," juga antara tanda kurung siku. 73 00:03:54,070 --> 00:03:58,170 Instruksi ini, seperti yang sekarang on line dua, akan menginformasikan 74 00:03:58,170 --> 00:04:02,460 compiler yang harus mencakup isi CS50.H dimanapun mereka berada 75 00:04:02,460 --> 00:04:06,620 di hard drive saya dalam program saya, dengan demikian mendidik compiler untuk 76 00:04:06,620 --> 00:04:09,050 apa yang dimaksud dengan tali. 77 00:04:09,050 --> 00:04:13,420 >> Mari kita mengkompilasi ulang program saya setelah menyimpan perubahan. 78 00:04:13,420 --> 00:04:15,500 Membuat halo satu. 79 00:04:15,500 --> 00:04:16,440 Enter. 80 00:04:16,440 --> 00:04:17,730 Jauh lebih baik. 81 00:04:17,730 --> 00:04:23,760 Sekarang aku punya prompt berkedip di mana saya bisa mengetik, ". / hello satu," dan voila. 82 00:04:23,760 --> 00:04:25,010 Hello David. 83 00:04:25,010 --> 00:04:26,402