1 00:00:00,000 --> 00:00:00,440 2 00:00:00,440 --> 00:00:00,860 >> SPEAKER 1: Được rồi. 3 00:00:00,860 --> 00:00:03,260 Đó là chương trình cuối cùng là một chút nhàm chán. 4 00:00:03,260 --> 00:00:05,510 Chúng ta hãy đi trước và cá nhân này một chút. 5 00:00:05,510 --> 00:00:07,710 Chứ không phải là để chào thế giới, lý do tại sao chúng ta không đi trước 6 00:00:07,710 --> 00:00:09,680 và nói, xin chào David? 7 00:00:09,680 --> 00:00:12,500 Vâng, để làm được điều này, tôi có thể tiếp cận này trong một vài cách. 8 00:00:12,500 --> 00:00:15,760 Tôi có thể, tất nhiên, mã chỉ cứng David, nhưng đó không phải là tất cả những gì 9 00:00:15,760 --> 00:00:17,650 về cơ bản khác nhau từ phiên bản cuối cùng. 10 00:00:17,650 --> 00:00:21,430 Vì vậy, chúng ta hãy một bước nhảy vọt về phía trước, lùi lại mà thay đổi, và thay vào đó chèn một mới 11 00:00:21,430 --> 00:00:23,980 dòng mã nơi dòng năm một lần. 12 00:00:23,980 --> 00:00:28,970 >> Cụ thể, những gì tôi sẽ làm gì đây được thêm vào tên chuỗi, do đó 13 00:00:28,970 --> 00:00:30,920 khai báo một biến. 14 00:00:30,920 --> 00:00:34,240 Chú ý rằng trong C, không chỉ làm bạn có để cung cấp cho một biến một cái tên, mà trong 15 00:00:34,240 --> 00:00:38,110 trường hợp này là tên, bạn cũng có để xác định loại nó được. 16 00:00:38,110 --> 00:00:41,970 Chúng ta sẽ thấy các loại bao lâu, trong số họ số nguyên và dấu chấm động 17 00:00:41,970 --> 00:00:46,480 giá trị và nhiều hơn nữa, nhưng bây giờ, chuỗi chỉ là một từ hoặc một cụm từ, hơn 18 00:00:46,480 --> 00:00:49,340 chính thức, một chuỗi các không hoặc nhiều ký tự. 19 00:00:49,340 --> 00:00:53,760 Vì vậy, tại thời điểm này, dòng này là năm câu nói, đưa cho tôi một biến gọi là tên 20 00:00:53,760 --> 00:00:56,560 có kiểu dữ liệu là chuỗi. 21 00:00:56,560 --> 00:01:00,460 >> Bây giờ, tôi muốn để lưu trữ một giá trị trong đó, và để làm điều đó trong C, chúng tôi sử dụng bằng 22 00:01:00,460 --> 00:01:03,030 đăng ký, nếu không được gọi là điều hành phân công. 23 00:01:03,030 --> 00:01:04,860 Vì vậy, tôi sẽ tiến hành như sau. 24 00:01:04,860 --> 00:01:10,220 Bằng giá, unquote, D-A-V-I-D, quote khép kín, dấu chấm phẩy. 25 00:01:10,220 --> 00:01:15,595 Ảnh hưởng thực phù năm hiện nay là khai báo một chuỗi, D-A-V-I-D, lưu trữ 26 00:01:15,595 --> 00:01:19,480 nó từ phía bên tay phải của này biểu vào biến trên 27 00:01:19,480 --> 00:01:21,480 phía bên tay trái của biểu thức này. 28 00:01:21,480 --> 00:01:25,970 Vì vậy, vào cuối dòng này, chúng tôi có D-A-V-I-D được lưu trữ bên trong của một biến 29 00:01:25,970 --> 00:01:27,450 gọi tên. 30 00:01:27,450 --> 00:01:28,910 >> Bây giờ chúng ta sử dụng biến này. 31 00:01:28,910 --> 00:01:35,010 Trên dòng sáu, tôi sẽ thay thế thế giới với một trình giữ chỗ. 32 00:01:35,010 --> 00:01:39,960 % S được xác định theo tài liệu hướng dẫn cho printf như là một 33 00:01:39,960 --> 00:01:41,690 giữ chỗ cho một chuỗi. 34 00:01:41,690 --> 00:01:44,620 Nói cách khác, nó là một cách thông báo printf rằng tôi sẽ đặt 35 00:01:44,620 --> 00:01:47,930 một số giá trị khác ở đây, nhưng hãy để tôi cho bạn chỉ trong một khoảnh khắc nào 36 00:01:47,930 --> 00:01:49,180 nó có được. 37 00:01:49,180 --> 00:01:52,800 Bây giờ, làm thế nào để tiến hành cho printf những gì giá trị là có được? 38 00:01:52,800 --> 00:01:56,850 >> Vâng, tôi cần phải cung cấp printf với một số thứ hai, và để làm điều đó, tôi 39 00:01:56,850 --> 00:02:00,460 cần phải đặt một dấu phẩy sau đó đầu tiên lập luận, được trích dẫn này 40 00:02:00,460 --> 00:02:04,990 chuỗi, và sau đó tôi cần phải xác định những gì giá trị tôi muốn cắm vào đó 41 00:02:04,990 --> 00:02:07,010 giữ chỗ đầu tiên của đối số. 42 00:02:07,010 --> 00:02:10,880 Vì vậy, tên của biến của tôi là, Tất nhiên, tên, vì vậy nó cũng đủ để gõ 43 00:02:10,880 --> 00:02:14,000 "Tên" như thứ hai lập luận printf. 44 00:02:14,000 --> 00:02:15,070 Bây giờ không được lừa dối. 45 00:02:15,070 --> 00:02:20,440 Mặc dù có một dấu phẩy bên trong các chuỗi trích dẫn, đó thực sự là 46 00:02:20,440 --> 00:02:24,370 bên trong sợi dây để nó không tách một đối số từ khác. 47 00:02:24,370 --> 00:02:28,740 Chỉ dấu này đó là bên ngoài mà chuỗi trích dẫn thực sự chia tách 48 00:02:28,740 --> 00:02:31,700 Đối số đầu tiên printf từ số thứ hai của mình. 49 00:02:31,700 --> 00:02:34,270 >> Bây giờ chúng ta biên dịch chương trình này. 50 00:02:34,270 --> 00:02:36,500 Làm cho một hello. 51 00:02:36,500 --> 00:02:39,570 Ôi trời, năm lỗi phát sinh, và chương trình của tôi 52 00:02:39,570 --> 00:02:41,100 chỉ có bảy đường dài. 53 00:02:41,100 --> 00:02:44,720 Vâng, như mọi khi, không nhìn vào người cuối cùng các lỗi trên màn hình của bạn. 54 00:02:44,720 --> 00:02:47,960 Nhìn vào đầu tiên bởi vì có lẽ theo đó có một hiệu ứng tầng 55 00:02:47,960 --> 00:02:51,600 chỉ là một lỗi lên tạo hàng đầu sự xuất hiện của nhiều lỗi hơn có 56 00:02:51,600 --> 00:02:52,570 thực sự. 57 00:02:52,570 --> 00:02:56,620 >> Vì vậy, hãy để tôi di chuyển lên, và như vậy đầu tiên lỗi in đậm ở đây là sử dụng 58 00:02:56,620 --> 00:02:59,140 không khai báo chuỗi nhận dạng. 59 00:02:59,140 --> 00:03:00,630 Ý của bạn là tiêu chuẩn trong? 60 00:03:00,630 --> 00:03:01,990 Cũng không có, tôi đã không. 61 00:03:01,990 --> 00:03:06,700 Tôi đã có nghĩa là chuỗi, nhưng nó quay ra tôi quên chuỗi không tồn tại như một 62 00:03:06,700 --> 00:03:10,830 nhập dữ liệu kỹ thuật trong C. Khái niệm nó tồn tại, nhưng từ 63 00:03:10,830 --> 00:03:16,210 "Chuỗi" chỉ tồn tại bởi vì các CS50 nhân viên đã tuyên bố, có thể nói, 64 00:03:16,210 --> 00:03:18,160 trong một tập tin mà chính chúng ta đã viết. 65 00:03:18,160 --> 00:03:22,540 Trong thực tế, cũng giống như một người nào đó từ lâu tuyên bố chức năng printf trong một tập tin 66 00:03:22,540 --> 00:03:28,310 được gọi là tiêu chuẩn IO.H, vì vậy chúng tôi đã làm việc nhân viên khai báo chuỗi như là một kiểu dữ liệu trong 67 00:03:28,310 --> 00:03:32,470 một tập tin đó, không có bất ngờ, được gọi là CS50.H. 68 00:03:32,470 --> 00:03:36,340 >> Vì vậy, chúng ta hãy quay trở lại đầu của tôi chương trình và thông báo cho trình biên dịch 69 00:03:36,340 --> 00:03:40,130 không chỉ làm tôi muốn sử dụng các biểu tượng chuỗi, tôi cũng muốn giáo dục 70 00:03:40,130 --> 00:03:42,160 trình biên dịch vào những gì biểu tượng đó có nghĩa là. 71 00:03:42,160 --> 00:03:47,010 Và để làm điều đó khá đơn giản, tôi có thể đi trở lại để xếp hàng một, chèn một dòng mới 72 00:03:47,010 --> 00:03:54,070 ở đây, và thêm, "bao gồm CS50.H" cũng trong ngoặc đơn góc cạnh. 73 00:03:54,070 --> 00:03:58,170 Hướng dẫn này, giống như bây giờ trên dòng hai, sẽ thông báo cho 74 00:03:58,170 --> 00:04:02,460 trình biên dịch mà nó phải bao gồm các nội dung của CS50.H bất cứ nơi nào họ 75 00:04:02,460 --> 00:04:06,620 trong ổ cứng của tôi bên trong chương trình của tôi, qua đó giáo dục các trình biên dịch để 76 00:04:06,620 --> 00:04:09,050 có nghĩa là gì chuỗi. 77 00:04:09,050 --> 00:04:13,420 >> Hãy biên dịch lại chương trình của tôi sau khi lưu các thay đổi. 78 00:04:13,420 --> 00:04:15,500 Làm cho một hello. 79 00:04:15,500 --> 00:04:16,440 Nhập. 80 00:04:16,440 --> 00:04:17,730 Tốt hơn nhiều. 81 00:04:17,730 --> 00:04:23,760 Tôi đã có một dấu nhắc nhấp nháy mà tôi có thể gõ ". / hello một," và thì đấy. 82 00:04:23,760 --> 00:04:25,010 Xin chào David. 83 00:04:25,010 --> 00:04:26,402