1 00:00:00,000 --> 00:00:02,420 >> [موسیقی] 2 00:00:02,420 --> 00:00:05,189 3 00:00:05,189 --> 00:00:05,980 SPEAKER: بسیار خوب. 4 00:00:05,980 --> 00:00:08,540 بنابراین اجازه دهید در مورد یکی دیگر صحبت چیزی که نوع منحصر به فرد C، 5 00:00:08,540 --> 00:00:10,010 است که نوع داده ها و متغیرها. 6 00:00:10,010 --> 00:00:12,340 وقتی که من میگویم منحصر به فرد C، من واقعا تنها در چارچوب معنی، 7 00:00:12,340 --> 00:00:14,470 اگر شما یک برنامه نویس شده برای یک مدت واقعا طولانی، 8 00:00:14,470 --> 00:00:16,270 شما احتمالا نمی کار با انواع داده 9 00:00:16,270 --> 00:00:18,470 اگر شما مدرن استفاده می شود زبانهای برنامه نویسی. 10 00:00:18,470 --> 00:00:20,432 زبان های مدرن مانند پی اچ پی و جاوا اسکریپت، 11 00:00:20,432 --> 00:00:22,640 که ما همچنین می خواهید یک کمی را ببینید بعد از آن در این دوره، 12 00:00:22,640 --> 00:00:25,550 شما در واقع نه باید برای مشخص نوع داده یک متغیر 13 00:00:25,550 --> 00:00:26,270 زمانی که شما از آن استفاده کنید. 14 00:00:26,270 --> 00:00:28,067 >> شما فقط آن را اعلام و شروع به استفاده از آن. 15 00:00:28,067 --> 00:00:29,900 اگر آن را یک عدد صحیح است، آن را می دانم آن را یک عدد صحیح است. 16 00:00:29,900 --> 00:00:31,960 اگر آن را یک شخصیت است، آن را می داند که یک شخصیت است. 17 00:00:31,960 --> 00:00:35,320 اگر یک کلمه است، آن را می داند آن را یک رشته، به اصطلاح است. 18 00:00:35,320 --> 00:00:37,300 >> اما در C، که یک زبان قدیمی، ما نیاز 19 00:00:37,300 --> 00:00:39,420 برای مشخص کردن داده نوع هر یک از متغیرها 20 00:00:39,420 --> 00:00:42,990 که ما ایجاد اولین بار که ما با استفاده آن متغیر است. 21 00:00:42,990 --> 00:00:45,030 بنابراین C همراه با برخی از ساخته شده در انواع داده ها. 22 00:00:45,030 --> 00:00:46,972 و اجازه دهید آشنا با برخی از این. 23 00:00:46,972 --> 00:00:50,180 پس از آن و پس از آن ما همچنین می خواهیم صحبت کمی در مورد برخی از انواع داده ای 24 00:00:50,180 --> 00:00:54,450 که ما برای شما نوشته شده است، بنابراین شما می توانید آنها را در CS50 استفاده کنید. 25 00:00:54,450 --> 00:00:56,130 >> اولین نوع int است. 26 00:00:56,130 --> 00:00:59,110 نوع داده int برای متغیرهای مورد استفاده قرار که مقادیر صحیح را ذخیره کنید. 27 00:00:59,110 --> 00:01:03,210 بنابراین 1، 2، 3، منفی 1، 2، 3، و غیره. 28 00:01:03,210 --> 00:01:05,960 اعداد صحیح، چیزی است که شما که باید در نظر داشته برای مسابقه نگه دارید، 29 00:01:05,960 --> 00:01:09,590 همیشه تا چهار بایت حافظه، 32 بیت است. 30 00:01:09,590 --> 00:01:11,620 هشت بیت در یک بایت است. 31 00:01:11,620 --> 00:01:14,470 >> بنابراین این بدان معنی است که طیف وسیعی از ارزش هایی که یک عدد صحیح می توانید ذخیره 32 00:01:14,470 --> 00:01:19,130 با آنچه در تناسب محدود می 32 بیت ارزش از اطلاعات است. 33 00:01:19,130 --> 00:01:21,850 حال حاضر به عنوان آن می رسد، آن را مدتها پیش تصمیم گرفته شد 34 00:01:21,850 --> 00:01:24,310 که ما را تقسیم کردن که وسیعی از 32 بیت 35 00:01:24,310 --> 00:01:26,650 به اعداد صحیح منفی و اعداد صحیح مثبت، 36 00:01:26,650 --> 00:01:28,390 هر نیمه گرفتن از محدوده. 37 00:01:28,390 --> 00:01:32,230 بنابراین طیف وسیعی از ارزش است که ما نمایندگی با طیف عدد صحیح از منفی 2 38 00:01:32,230 --> 00:01:36,520 به قدرت 31 به 2 تا قدرت 31 منهای 1، 39 00:01:36,520 --> 00:01:38,190 باعث شود شما نیز نیاز به یک نقطه برای 0. 40 00:01:38,190 --> 00:01:41,650 >> بنابراین اساسا نیمی از مقادیر ممکن شما می توانید در یک int جا منفی است، 41 00:01:41,650 --> 00:01:42,610 و نیمی مثبت هستند. 42 00:01:42,610 --> 00:01:47,270 و تقریبا در اینجا، این است که در مورد منفی 2 میلیارد به مثبت 2 میلیارد. 43 00:01:47,270 --> 00:01:50,207 دادن یا گرفتن چند صد میلیون نفر است. 44 00:01:50,207 --> 00:01:52,290 به طوری که آنچه شما می توانید مناسب در یک متغیر عدد صحیح است. 45 00:01:52,290 --> 00:01:55,490 در حال حاضر ما نیز چیزی به نام یک عدد صحیح بدون علامت است. 46 00:01:55,490 --> 00:01:59,220 در حال حاضر نوع داده int بدون علامت یک نوع جداگانه ای از متغیر. 47 00:01:59,220 --> 00:02:01,590 در عوض، بدون علامت است چه مقدماتی نامیده می شود. 48 00:02:01,590 --> 00:02:04,990 آن را تغییر داده نوع عدد صحیح کمی. 49 00:02:04,990 --> 00:02:07,850 >> و در این مورد، چه بدون علامت means-- و شما همچنین می توانید 50 00:02:07,850 --> 00:02:11,530 استفاده از انواع داده بدون علامت دیگر، عدد صحیح تنها نیست. 51 00:02:11,530 --> 00:02:15,310 دو برابر آنچه در آن به طور موثر می کند محدوده مثبت ارزش 52 00:02:15,310 --> 00:02:19,350 که یک عدد صحیح می تواند بر روی در را هزینه دیگر اجازه می دهد 53 00:02:19,350 --> 00:02:21,140 شما را به مقادیر منفی است. 54 00:02:21,140 --> 00:02:25,400 بنابراین اگر شما اعداد است که شما می دانید بالاتر از 2 میلیارد اما کمتر 55 00:02:25,400 --> 00:02:31,280 از 4 میلیارد، برای example-- که است که 2 به 32 power-- 56 00:02:31,280 --> 00:02:33,330 شما ممکن است مایل به استفاده از یک int بدون علامت اگر شما 57 00:02:33,330 --> 00:02:35,050 دانستن ارزش خود را هرگز منفی خواهد بود. 58 00:02:35,050 --> 00:02:37,216 >> شما گاهی اوقات باید مورد استفاده برای متغیرهای بدون علامت 59 00:02:37,216 --> 00:02:39,460 در CS50، همین دلیل است که من آن را در اینجا ذکر است. 60 00:02:39,460 --> 00:02:43,830 اما باز هم، طیف وسیعی از مقادیر که شما می توانید با یک عدد صحیح بدون علامت نشان دهنده 61 00:02:43,830 --> 00:02:48,240 به عنوان عدد صحیح به t به طور منظم، 0 به 2 تا قدرت 32 منهای 1، 62 00:02:48,240 --> 00:02:50,840 و یا در حدود 0-4000000000. 63 00:02:50,840 --> 00:02:53,730 بنابراین شما به طور موثر دو برابر ام وسیعی مثبت است که شما می توانید مناسب، 64 00:02:53,730 --> 00:02:56,270 اما شما تا تمام داده ام ارزش منفی است. 65 00:02:56,270 --> 00:03:00,040 >> در حال حاضر به عنوان یک کنار، بدون علامت تنها مقدماتی نمی 66 00:03:00,040 --> 00:03:01,790 که ما ممکن است برای دیدن انواع داده های متغیر. 67 00:03:01,790 --> 00:03:05,779 همچنین چیزهایی به نام وجود دارد کوتاه مدت و بلند و توایع. 68 00:03:05,779 --> 00:03:07,820 توایع ما یک کمی را ببینید کمی بعد در این دوره است. 69 00:03:07,820 --> 00:03:10,830 کوتاه و بلند، ما احتمالا نمی خواهد. 70 00:03:10,830 --> 00:03:12,830 >> اما فقط می دانم که وجود دارد دیگر مسابقات مقدماتی هستند. 71 00:03:12,830 --> 00:03:14,080 بدون علامت، تنها یکی نمی باشد. 72 00:03:14,080 --> 00:03:16,596 اما این تنها یکی از ما است رفتن به مورد در حال حاضر صحبت کنید. 73 00:03:16,596 --> 00:03:17,310 پس همه حق. 74 00:03:17,310 --> 00:03:18,393 بنابراین ما اعداد صحیح را پوشش داده ایم. 75 00:03:18,393 --> 00:03:19,200 بعدی چیست؟ 76 00:03:19,200 --> 00:03:20,130 >> کاراکتر. 77 00:03:20,130 --> 00:03:23,620 بنابراین کاراکتر برای متغیرهای مورد استفاده که شخصیت تنها ذخیره کند. 78 00:03:23,620 --> 00:03:24,850 کاراکتر کوتاه را برای شخصیت است. 79 00:03:24,850 --> 00:03:27,870 و گاهی اوقات شما ممکن شنیدن مردم تلفظ به عنوان ماشین. 80 00:03:27,870 --> 00:03:32,020 >> بنابراین شخصیت همیشه به یک بایت از حافظه است که فقط 8 بیت است. 81 00:03:32,020 --> 00:03:35,700 بنابراین این بدان معنی است که آنها فقط می تواند مناسب ارزش در محدوده منفی 2 82 00:03:35,700 --> 00:03:42,430 به قدرت هفتم، یا منفی 128، به 2 به توان 7 منهای 1، و یا 127. 83 00:03:42,430 --> 00:03:45,710 >> با تشکر از ASCII، آن بود مدت ها پیش تصمیم گرفت راه 84 00:03:45,710 --> 00:03:50,805 به نقشه آن اعداد مثبت از 0 تا 127 برای شخصیت های مختلف 85 00:03:50,805 --> 00:03:52,182 که همه بر روی صفحه کلید ما وجود داشته باشد. 86 00:03:52,182 --> 00:03:54,640 بنابراین ما به عنوان بعد از آن در خواهید دید البته، و شما احتمالا 87 00:03:54,640 --> 00:03:57,700 آمده به حفظ در برخی از نقطه، سرمایه، برای example-- 88 00:03:57,700 --> 00:04:00,732 سرمایه شخصیت A-- نقشه ها به تعداد 65. 89 00:04:00,732 --> 00:04:02,940 و دلیل آن این است چون این چیزی است که آن را 90 00:04:02,940 --> 00:04:05,490 توسط استاندارد ASCII اختصاص داده است. 91 00:04:05,490 --> 00:04:07,850 >> حروف کوچک 97 است. 92 00:04:07,850 --> 00:04:11,900 شخصیت 0 برای زمانی که شما در واقع نوع شخصیت، نه 93 00:04:11,900 --> 00:04:13,532 به نمایندگی از عدد صفر، 48 است. 94 00:04:13,532 --> 00:04:15,240 شما یک زن و شوهر یاد بگیرند از این که شما بروید. 95 00:04:15,240 --> 00:04:17,990 و شما قطعا می آیند به نیاز آنها را کمی بعد از آن در CS50. 96 00:04:17,990 --> 00:04:20,450 97 00:04:20,450 --> 00:04:23,390 >> بعدی نوع داده اصلی است اعداد اعشاری. 98 00:04:23,390 --> 00:04:26,100 بنابراین اعداد با ممیز شناور هستند همچنین به عنوان اعداد حقیقی شناخته شده است. 99 00:04:26,100 --> 00:04:28,850 آنها اساسا عدد هستید که یک نقطه اعشار در آنها است. 100 00:04:28,850 --> 00:04:33,360 شناور ارزش نقطه مانند اعداد صحیح نیز 101 00:04:33,360 --> 00:04:36,090 موجود در 4 بایت از حافظه است. 102 00:04:36,090 --> 00:04:37,580 در حال حاضر هیچ چارت اینجا وجود دارد. 103 00:04:37,580 --> 00:04:40,890 هیچ خط تعداد وجود دارد، چرا توصیف وسیعی از شناور 104 00:04:40,890 --> 00:04:44,550 دقیقا روشن و یا حسی نیست. 105 00:04:44,550 --> 00:04:47,350 >> کافی است به شما می گویم 32 بیت برای کار با. 106 00:04:47,350 --> 00:04:49,730 و اگر شما یک شماره مانند PI، که دارای 107 00:04:49,730 --> 00:04:55,510 بخش عدد صحیح 3، و یک شناور بخش نقطه، یا اعشاری 0.14159، 108 00:04:55,510 --> 00:04:58,735 و به همین ترتیب، شما نیاز به قادر به نمایندگی از تمام it-- 109 00:04:58,735 --> 00:05:02,420 قسمت صحیح و اعشاری بخش. 110 00:05:02,420 --> 00:05:04,550 >> بنابراین چه چیزی شما فکر می کنم که ممکن است به معنای؟ 111 00:05:04,550 --> 00:05:08,180 یکی از چیزهایی است که اگر از اعشار بخشی می شود طولانی تر و طولانی، 112 00:05:08,180 --> 00:05:10,660 اگر من یک بسیار بزرگ قسمت صحیح، من ممکن نیست 113 00:05:10,660 --> 00:05:13,090 قادر به عنوان دقیق با بخش اعشاری. 114 00:05:13,090 --> 00:05:15,280 و این واقعا محدودیت یک شناور. 115 00:05:15,280 --> 00:05:17,229 >> شناور یک مشکل دقیق داشته باشد. 116 00:05:17,229 --> 00:05:19,270 ما فقط 32 بیت به کار با، بنابراین ما فقط می توانیم 117 00:05:19,270 --> 00:05:22,510 چندان دقیق با اعشاری است. 118 00:05:22,510 --> 00:05:27,300 ما نمی توانیم لزوما دهدهی بخشی دقیق به 100 یا 200 رقم، 119 00:05:27,300 --> 00:05:29,710 چرا که ما فقط باید 32 بیت برای کار با. 120 00:05:29,710 --> 00:05:31,590 به طوری که یک محدودیت از یک شناور است. 121 00:05:31,590 --> 00:05:33,590 >> در حال حاضر خوشبختانه وجود دارد یکی دیگر از نوع داده به نام 122 00:05:33,590 --> 00:05:36,530 دو، که تا حدودی با این مشکل می پردازد. 123 00:05:36,530 --> 00:05:39,980 دو برابر، مانند شناور، نیز مورد استفاده قرار ذخیره شماره واقعی، و یا ممیز شناور 124 00:05:39,980 --> 00:05:40,840 ارزش. 125 00:05:40,840 --> 00:05:44,340 تفاوت این است که اتاق دو نفره دو برابر دقت. 126 00:05:44,340 --> 00:05:48,177 آنها می توانند 64 بیت از جا داده ها، یا هشت بایت است. 127 00:05:48,177 --> 00:05:49,010 معنی آن چیست؟ 128 00:05:49,010 --> 00:05:51,801 خب، به این معنی که ما می تواند خیلی بیشتر دقیق با نقطه اعشار. 129 00:05:51,801 --> 00:05:54,830 به جای داشتن PI به هفت مکان شاید، با شناور، 130 00:05:54,830 --> 00:05:56,710 ما شاید می توانید آن را به 30 مکان داشته باشد. 131 00:05:56,710 --> 00:05:59,824 اگر این مهم است، شما ممکن است بخواهید برای استفاده از دو جای یک شناور. 132 00:05:59,824 --> 00:06:01,740 در واقع، اگر شما کار بر روی هر چیزی که در آن 133 00:06:01,740 --> 00:06:06,540 داشتن یک محل اعشاری واقعا طولانی و بسیاری از دقت مهم است، 134 00:06:06,540 --> 00:06:08,630 شما احتمالا می خواهید استفاده از یک overfloat دو برابر شود. 135 00:06:08,630 --> 00:06:11,250 در حال حاضر برای بسیاری از کار خود را در CS50، شناور کافی است. 136 00:06:11,250 --> 00:06:15,340 اما نمی دانم که دو برابر به عنوان یک وجود داشته باشد راه تا حدودی با دقت برخورد 137 00:06:15,340 --> 00:06:20,980 مشکل با دادن به شما اضافی 32 بیت به کار با برای اعداد خود را. 138 00:06:20,980 --> 00:06:23,650 >> در حال حاضر این است که یک نوع داده است. 139 00:06:23,650 --> 00:06:24,390 این یک نوع است. 140 00:06:24,390 --> 00:06:25,340 و آن را از درجه اعتبار ساقط نامیده می شود. 141 00:06:25,340 --> 00:06:27,506 و من در مورد آن صحبت در اینجا چون ما احتمالا این 142 00:06:27,506 --> 00:06:29,520 چند بار در حال حاضر در CS50 دیده می شود آن. 143 00:06:29,520 --> 00:06:32,020 و شما ممکن است تعجب آنچه در آن همه چیز در مورد. 144 00:06:32,020 --> 00:06:33,390 >> بنابراین از درجه اعتبار ساقط یک نوع است. 145 00:06:33,390 --> 00:06:34,097 آن وجود داشته باشد. 146 00:06:34,097 --> 00:06:35,180 اما این یک نوع داده است. 147 00:06:35,180 --> 00:06:39,350 >> ما می توانیم یک متغیر از نوع ایجاد کنید از درجه اعتبار ساقط و یک مقدار را به آن است. 148 00:06:39,350 --> 00:06:42,519 اما توابع، برای مثال، می توانید یک نوع بازگشت از درجه اعتبار ساقط است. 149 00:06:42,519 --> 00:06:45,060 در واقع، اگر شما یک تابع را ببینید است که یک نوع بازگشت از درجه اعتبار ساقط، 150 00:06:45,060 --> 00:06:46,970 به این معنی آن یک مقدار بازگشت نیست. 151 00:06:46,970 --> 00:06:49,440 می تواند شما را از یک مشترک فکر می کنم تابع است که ما تا کنون استفاده کرده اید 152 00:06:49,440 --> 00:06:52,780 در CS50 که یک مقدار بازگشت نیست؟ 153 00:06:52,780 --> 00:06:54,700 >> تابع () printf است. 154 00:06:54,700 --> 00:06:56,820 تابع () printf نمی کند در واقع بازگشت هر چیزی به شما. 155 00:06:56,820 --> 00:06:59,850 این چیزی است که به چاپ صفحه نمایش، و آن را اساسا 156 00:06:59,850 --> 00:07:01,650 یک عارضه جانبی از آنچه تابع () printf کند. 157 00:07:01,650 --> 00:07:03,620 اما آن را نمی کند شما یک مقدار را به عقب. 158 00:07:03,620 --> 00:07:08,419 شما نتیجه و اینترنتی را در خود ندارد آن را در برخی از متغیر به استفاده از آن به بعد در. 159 00:07:08,419 --> 00:07:10,710 این تنها چیزی را به چاپ صفحه نمایش و شما انجام می شود. 160 00:07:10,710 --> 00:07:14,360 >> بنابراین ما می گویند که printf یک تابع از درجه اعتبار ساقط است. 161 00:07:14,360 --> 00:07:16,450 آن را می گرداند هیچ چیز نیست. 162 00:07:16,450 --> 00:07:18,580 >> لیست محیط یک تابع همچنین می تواند باطل است. 163 00:07:18,580 --> 00:07:21,410 و شما نیز دیده می شود که بسیار کمی در CS50 بیش از حد. 164 00:07:21,410 --> 00:07:22,300 بی اعتبار اصلی بین المللی. 165 00:07:22,300 --> 00:07:23,260 می کند که حلقه زنگ؟ 166 00:07:23,260 --> 00:07:24,080 167 00:07:24,080 --> 00:07:27,220 در واقع آنچه که بدان معنی است که اصلی هیچ پارامتری را ندارد. 168 00:07:27,220 --> 00:07:29,520 هیچ استدلال وجود دارد که دریافت به اصلی منتقل می شود. 169 00:07:29,520 --> 00:07:32,780 در حال حاضر بعد از ما وجود دارد این است که یک راه برای ارسال آرگومان به اصلی، 170 00:07:32,780 --> 00:07:36,189 اما تا کنون آنچه که ما دیده بی اعتبار اصلی نوع int است. 171 00:07:36,189 --> 00:07:37,730 اصلی فقط هیچ استدلال را ندارد. 172 00:07:37,730 --> 00:07:40,236 و بنابراین ما مشخص است که با گفتن باطل است. 173 00:07:40,236 --> 00:07:42,110 ما فقط بسیار صریح و روشن در مورد این واقعیت 174 00:07:42,110 --> 00:07:44,430 که آن را هر گونه استدلال را ندارد. 175 00:07:44,430 --> 00:07:47,160 >> بنابراین در حال حاضر، آن را کافی به می گویند که اساسا از درجه اعتبار ساقط 176 00:07:47,160 --> 00:07:50,789 باید فقط به عنوان یک حفره یا سوراخ خدمت برای شما به عنوان فکر کردن در مورد به عنوان چیزی. 177 00:07:50,789 --> 00:07:52,080 این واقعا انجام هر کاری است. 178 00:07:52,080 --> 00:07:53,550 هیچ مقدار بازگشتی در اینجا وجود دارد. 179 00:07:53,550 --> 00:07:54,770 هیچ پارامترهایی که در اینجا وجود دارد. 180 00:07:54,770 --> 00:07:55,709 این بی اعتبار کند. 181 00:07:55,709 --> 00:07:57,250 آن را کمی پیچیده تر از آن است. 182 00:07:57,250 --> 00:08:00,640 اما این باید برای کافی بخشی بهتر از این دوره است. 183 00:08:00,640 --> 00:08:05,010 و امیدوارم حال حاضر شما باید کمی کمی بیشتر از یک مفهوم آنچه باطل است. 184 00:08:05,010 --> 00:08:08,460 >> بنابراین کسانی که پنج نوع نظر شما روبرو می شوند که به C. ساخته شده در 185 00:08:08,460 --> 00:08:10,670 اما در CS50 ما نیز یک کتابخانه داشته باشد. 186 00:08:10,670 --> 00:08:13,550 CS50.H، که شما می توانید است. 187 00:08:13,550 --> 00:08:15,930 و به شما ارائه خواهد شد که با دو نوع اضافی 188 00:08:15,930 --> 00:08:18,280 که شما احتمالا قادر باشد برای استفاده بر روی تکالیف خود را، 189 00:08:18,280 --> 00:08:21,210 یا فقط کار به طور کلی برنامه نویسی. 190 00:08:21,210 --> 00:08:23,030 >> اولین بار از این بولی است. 191 00:08:23,030 --> 00:08:26,780 بنابراین نوع داده بولی، بولی است، برای متغیرهای مورد استفاده 192 00:08:26,780 --> 00:08:28,114 که یک مقدار بولی را ذخیره کنید. 193 00:08:28,114 --> 00:08:29,863 اگر تا به حال شنیده ام این مدت قبل، شما 194 00:08:29,863 --> 00:08:31,960 ممکن است بدانید که یک عبارت بولی ارزش قادر به است 195 00:08:31,960 --> 00:08:34,440 برگزاری دو مقدار متفاوت مجزا می باشد. 196 00:08:34,440 --> 00:08:35,872 درست و نادرست. 197 00:08:35,872 --> 00:08:37,580 در حال حاضر این نظر می رسد بسیار اساسی، درست است؟ 198 00:08:37,580 --> 00:08:40,496 این نوع از تعجب است که این است در C وجود داشته باشد آن را به عنوان ساخته شده است در. 199 00:08:40,496 --> 00:08:42,640 و در بسیاری از زبان های مدرن، البته، Booleans می 200 00:08:42,640 --> 00:08:45,390 یک نوع داده به طور پیش فرض استاندارد. 201 00:08:45,390 --> 00:08:47,192 اما در C، آنها نیست در واقع. 202 00:08:47,192 --> 00:08:48,400 اما ما آن را برای شما ایجاد کرده اید. 203 00:08:48,400 --> 00:08:51,910 بنابراین اگر شما همیشه نیاز به ایجاد یک متغیر است که نوع بولی است، 204 00:08:51,910 --> 00:08:55,230 فقط مطمئن شوید که # شامل CS50.H شود در آغاز برنامه خود را، 205 00:08:55,230 --> 00:08:57,800 و شما قادر خواهید بود به ایجاد متغیر از نوع بولی. 206 00:08:57,800 --> 00:09:02,095 >> اگر شما فراموش نکنید که به # شامل CS50.H، و شما شروع به استفاده از متغیر بولی نوع 207 00:09:02,095 --> 00:09:04,970 شما ممکن است برخی مشکلات روبرو می شوند زمانی که شما از کامپایل برنامه خود را. 208 00:09:04,970 --> 00:09:06,490 بنابراین فقط در مواظب برای آن باشد. 209 00:09:06,490 --> 00:09:11,180 و شاید شما فقط می تواند به رفع مشکلات پوند از جمله CS50.h. 210 00:09:11,180 --> 00:09:14,590 >> دیگر نوع داده بزرگ است که ما را برای شما در کتابخانه CS50 211 00:09:14,590 --> 00:09:15,670 رشته است. 212 00:09:15,670 --> 00:09:17,130 پس چه یک رشته است؟ 213 00:09:17,130 --> 00:09:18,520 رشته ها واقعا فقط کلمات. 214 00:09:18,520 --> 00:09:20,000 آنها مجموعه ای از شخصیت است. 215 00:09:20,000 --> 00:09:20,640 آنها کلمات. 216 00:09:20,640 --> 00:09:21,390 آنها احکام است. 217 00:09:21,390 --> 00:09:22,480 آنها پاراگراف است. 218 00:09:22,480 --> 00:09:25,850 ممکن است کل کتاب، حتی. 219 00:09:25,850 --> 00:09:29,690 >> بسیار کوتاه به بسیار طولانی سری از شخصیت های. 220 00:09:29,690 --> 00:09:34,310 اگر شما نیاز به استفاده از رشته ها، برای مثال، برای ذخیره یک کلمه، 221 00:09:34,310 --> 00:09:37,609 فقط مطمئن شوید که شامل CS50.H شود در آغاز برنامه های خود را 222 00:09:37,609 --> 00:09:38,900 بنابراین شما می توانید نوع رشته استفاده کنید. 223 00:09:38,900 --> 00:09:43,910 و پس از آن شما می توانید متغیر ایجاد که نوع داده رشته است. 224 00:09:43,910 --> 00:09:46,160 در حال حاضر بعد از آن در این دوره، ما همچنین می خواهیم دید که این 225 00:09:46,160 --> 00:09:47,752 نه کل داستان، یا. 226 00:09:47,752 --> 00:09:49,460 ما همه چیز روبرو می شوند ساختار نامیده می شود، 227 00:09:49,460 --> 00:09:54,249 که به شما اجازه گروه آنچه که ممکن است یک عدد صحیح و یک رشته به یک واحد. 228 00:09:54,249 --> 00:09:56,290 و ما می توانیم برای استفاده از آن برخی از هدف، که ممکن است 229 00:09:56,290 --> 00:09:57,750 در مفید آمده است بعدا در این دوره است. 230 00:09:57,750 --> 00:09:59,500 >> و ما نیز باید یاد بگیرند در مورد انواع تعریف شده است، 231 00:09:59,500 --> 00:10:01,720 که اجازه می دهد به شما برای ایجاد انواع داده خود را. 232 00:10:01,720 --> 00:10:03,060 ما لازم نیست که به نگرانی در که در حال حاضر. 233 00:10:03,060 --> 00:10:04,550 اما فقط می دانم که که چیزی در افق، 234 00:10:04,550 --> 00:10:07,633 که خیلی بیشتر به این طیف وجود دارد نوع چیزی از من به شما گفتن فقط 235 00:10:07,633 --> 00:10:08,133 اکنون. 236 00:10:08,133 --> 00:10:10,591 پس حالا که ما به دست یک کمی در مورد داده های اولیه 237 00:10:10,591 --> 00:10:14,230 انواع و انواع داده CS50، اجازه دهید صحبت در مورد نحوه کار با متغیر ها 238 00:10:14,230 --> 00:10:18,530 و ایجاد آنها را با استفاده از این انواع داده ها در برنامه های ما است. 239 00:10:18,530 --> 00:10:22,670 اگر شما می خواهید برای ایجاد یک متغیر، همه شما نیاز به انجام دو چیز است. 240 00:10:22,670 --> 00:10:24,147 >> اول، شما نیاز به آن را یک نوع است. 241 00:10:24,147 --> 00:10:26,230 دومین چیزی که شما نیاز دارید انجام دهید این است آن را یک نام بدهید. 242 00:10:26,230 --> 00:10:28,740 هنگامی که شما انجام داده ام که سیلی و نقطه و ویرگول در پایان این خط، 243 00:10:28,740 --> 00:10:29,830 شما یک متغیر ایجاد کرده اید. 244 00:10:29,830 --> 00:10:32,370 >> بنابراین در اینجا دو نمونه است. 245 00:10:32,370 --> 00:10:35,744 تعداد اعضای هیات؛ ؛. نامه کاراکتر 246 00:10:35,744 --> 00:10:36,660 من چه کرده ام که اینجا هستید؟ 247 00:10:36,660 --> 00:10:38,110 من دو متغیر ایجاد کرده اید. 248 00:10:38,110 --> 00:10:40,190 >> اول، متغیر نام و نام خانوادگی عدد است. 249 00:10:40,190 --> 00:10:44,830 و تعداد قادر به نگه داشتن عدد صحیح است نوع ارزش، به دلیل نوع آن نوع int است. 250 00:10:44,830 --> 00:10:48,040 نامه متغیر دیگر است است که می تواند شخصیت را نگه دارید 251 00:10:48,040 --> 00:10:50,240 چون نوع داده آن کاراکتر است. 252 00:10:50,240 --> 00:10:51,772 >> بسیار ساده، درست است؟ 253 00:10:51,772 --> 00:10:53,480 اگر شما به خودتان پیدا کنید در یک وضعیت که 254 00:10:53,480 --> 00:10:56,250 شما نیاز به ایجاد چند متغیرهای از همان نوع، 255 00:10:56,250 --> 00:10:58,740 شما فقط نیاز به مشخص نام نوع یک بار. 256 00:10:58,740 --> 00:11:01,600 پس از آن فقط به عنوان بسیاری از متغیرهای لیست از آن نوع که شما نیاز دارید. 257 00:11:01,600 --> 00:11:04,230 >> بنابراین من می تواند به عنوان مثال، در اینجا در این خط سوم کد، 258 00:11:04,230 --> 00:11:07,420 می گویند ارتفاع INT ؛، خط جدید. 259 00:11:07,420 --> 00:11:08,291 ؛. عرض INT 260 00:11:08,291 --> 00:11:09,290 و بیش از حد کار می کنند. 261 00:11:09,290 --> 00:11:12,039 من هنوز هم می خواهم دو متغیر به نام ارتفاع و عرض، که هر کدام 262 00:11:12,039 --> 00:11:12,730 یک عدد صحیح است. 263 00:11:12,730 --> 00:11:16,970 اما من مجاز به، همه چیز به نحو C، تحکیم آن را به یک خط. 264 00:11:16,970 --> 00:11:20,230 ارتفاع متوسط، عرض این همان چیزی است. 265 00:11:20,230 --> 00:11:23,900 من دو متغیر، یکی به نام ایجاد کرده اید ارتفاع یکی به نام عرض، که هر دو 266 00:11:23,900 --> 00:11:26,730 قادر به برگزاری ارزش نوع عدد صحیح است. 267 00:11:26,730 --> 00:11:30,920 >> به طور مشابه در اینجا، من می تواند سه ایجاد مقادیر ممیز شناور در یک بار. 268 00:11:30,920 --> 00:11:33,350 من شاید یک متغیر ایجاد می به نام جذر 2-- 269 00:11:33,350 --> 00:11:35,766 که احتمالا در نهایت point-- شناور نگه 270 00:11:35,766 --> 00:11:39,222 که نمایندگی از مربع ریشه 2-- جذر 3 و پی. 271 00:11:39,222 --> 00:11:41,180 من می توانم این انجام داده اند در سه خط مجزا. 272 00:11:41,180 --> 00:11:47,690 شناور، ریشه مربع 2؛ شناور ریشه مربع 3. PI شناور؛ و بیش از حد کار می کنند. 273 00:11:47,690 --> 00:11:50,590 >> اما باز هم، من فقط می تواند تحکیم این به یک خط کد. 274 00:11:50,590 --> 00:11:54,050 باعث می شود همه چیز را کمی کوتاه تر، به عنوان سنگین است. 275 00:11:54,050 --> 00:11:57,259 >> در حال حاضر به طور کلی، طراحی خوب، تنها از آن تعریف یک متغیر زمانی که شما به آن نیاز دارید. 276 00:11:57,259 --> 00:11:59,050 و ما کمی صحبت کمی بیشتر در مورد که 277 00:11:59,050 --> 00:12:00,945 بعد از آن در دوره وقتی دامنه بحث می کنیم. 278 00:12:00,945 --> 00:12:03,320 بنابراین لزوما نیاز دارید که نه ایجاد تمام متغیرهای خود را 279 00:12:03,320 --> 00:12:05,990 در آغاز این برنامه، که برخی از مردم ممکن انجام داده اند گذشته، 280 00:12:05,990 --> 00:12:08,700 یا بسیار معمول بود قطعا سال ها پیش برنامه نویسی تمرین 281 00:12:08,700 --> 00:12:11,700 در هنگام کار با C. شما فقط ممکن است می خواهید برای ایجاد یک حق متغیر زمانی 282 00:12:11,700 --> 00:12:13,140 شما به آن نیاز دارید. 283 00:12:13,140 --> 00:12:13,640 خیلی خوب. 284 00:12:13,640 --> 00:12:15,150 بنابراین ما متغیر ایجاد کرده اید. 285 00:12:15,150 --> 00:12:16,790 چگونه می توانم آنها استفاده می کنیم؟ 286 00:12:16,790 --> 00:12:18,650 بعد از ما اعلام متغیر، ما لازم نیست 287 00:12:18,650 --> 00:12:21,237 برای مشخص کردن نوع داده از این متغیر دیگر. 288 00:12:21,237 --> 00:12:24,070 در واقع، اگر شما این کار را، شما ممکن است در نهایت با برخی از عواقب عجیب و غریب 289 00:12:24,070 --> 00:12:25,490 که ما را بیش از نوع براق در حال حاضر. 290 00:12:25,490 --> 00:12:27,365 اما کافی است که گفته، چیزهای عجیب و غریب می رویم 291 00:12:27,365 --> 00:12:30,740 شروع به اتفاق می افتد اگر شما سهوا دوباره اعلام متغیرهای با همین نام 292 00:12:30,740 --> 00:12:32,210 دوباره و دوباره. 293 00:12:32,210 --> 00:12:33,882 >> بنابراین در اینجا من چهار خط کد. 294 00:12:33,882 --> 00:12:36,090 و من یک زن و شوهر از نظرات وجود دارد فقط نشان می دهد 295 00:12:36,090 --> 00:12:37,840 آنچه اتفاق می افتد در هر خط فقط برای کمک به 296 00:12:37,840 --> 00:12:40,520 شما در چه خبر است واقع شده است. 297 00:12:40,520 --> 00:12:41,520 تعداد بنابراین اعضای هیات ؛. 298 00:12:41,520 --> 00:12:42,520 شما که قبلا دیدم. 299 00:12:42,520 --> 00:12:44,000 که تعریف متغیر است. 300 00:12:44,000 --> 00:12:46,670 >> من در حال حاضر یک متغیر ایجاد کرده اید شماره به نام که 301 00:12:46,670 --> 00:12:48,970 قادر به نگه داشتن مقادیر صحیح نوع. 302 00:12:48,970 --> 00:12:50,210 من آن را اعلام کرده ام. 303 00:12:50,210 --> 00:12:53,770 >> خط بعدی من اختصاص یک مقدار را به تعداد. 304 00:12:53,770 --> 00:12:54,992 تعداد برابر 17. 305 00:12:54,992 --> 00:12:55,950 آنچه اتفاق می افتد وجود دارد؟ 306 00:12:55,950 --> 00:12:58,880 من قرار دادن شماره 17 داخل آن متغیر است. 307 00:12:58,880 --> 00:13:02,760 >> بنابراین اگر من تا به حال و سپس چاپ آنچه محتویات تعداد بعد ها، 308 00:13:02,760 --> 00:13:04,030 آنها به من بگویید آن 17. 309 00:13:04,030 --> 00:13:07,030 بنابراین من یک متغیر اعلام کرد، و سپس من آن اختصاص داده ایم. 310 00:13:07,030 --> 00:13:10,570 >> ما می توانید تکرار روند دوباره با نامه کاراکتر ؛. 311 00:13:10,570 --> 00:13:11,640 که یک بیانیه. 312 00:13:11,640 --> 00:13:14,010 نامه برابر سرمایه H. که انتساب است. 313 00:13:14,010 --> 00:13:16,030 بسیار ساده، TOO. 314 00:13:16,030 --> 00:13:18,319 >> در حال حاضر این روند ممکن است به نظر می رسد نوع احمقانه است. 315 00:13:18,319 --> 00:13:20,110 چرا این کار را می ما در دو خط از کد؟ 316 00:13:20,110 --> 00:13:21,401 آیا راه بهتری برای انجام آن وجود دارد؟ 317 00:13:21,401 --> 00:13:22,250 در واقع، وجود دارد. 318 00:13:22,250 --> 00:13:24,375 گاهی اوقات شما ممکن است ببینید این نام اولیه. 319 00:13:24,375 --> 00:13:28,446 این زمانی است که شما یک متغیر و یک مقدار را در همان زمان. 320 00:13:28,446 --> 00:13:30,320 این در واقع خیلی چیز مشترک انجام دهید. 321 00:13:30,320 --> 00:13:32,870 هنگامی که شما یک متغیر ایجاد کنید، شما معمولا می خواهم آن را به برخی از ارزش های اساسی. 322 00:13:32,870 --> 00:13:34,330 حتی اگر آن را 0 و یا چیزی. 323 00:13:34,330 --> 00:13:36,180 شما فقط شما آن را یک ارزش می دهد. 324 00:13:36,180 --> 00:13:38,360 >> شما می توانید یک متغیر مقداردهی اولیه. 325 00:13:38,360 --> 00:13:42,320 INT تعداد برابر 17 همان است دو خط اول کد در بالا. 326 00:13:42,320 --> 00:13:46,829 نامه کاراکتر برابر ساعت همان است خطوط سوم و چهارم کد بالا. 327 00:13:46,829 --> 00:13:49,620 غذای آماده مهم در اینجا زمانی که ما اعلام و اختصاص 328 00:13:49,620 --> 00:13:51,740 متغیر است پس از این ما آن را اعلام کرد، متوجه 329 00:13:51,740 --> 00:13:53,700 من با استفاده از نوع داده دوباره. 330 00:13:53,700 --> 00:13:57,916 من ادعا نمی کنم تعداد اعضای هیات برابر 17 در خط دوم از کد، برای مثال. 331 00:13:57,916 --> 00:13:59,290 من فقط گفت تعداد برابر 17. 332 00:13:59,290 --> 00:14:02,537 >> باز هم، دوباره پس از اعلام یک متغیر شما در حال حاضر اعلام کرد و آن می تواند منجر 333 00:14:02,537 --> 00:14:03,620 به برخی نتیجه عجیب و غریب. 334 00:14:03,620 --> 00:14:05,950 بنابراین فقط مراقب باشید از آن باشد. 335 00:14:05,950 --> 00:14:06,660 >> من داگ لوید هستم. 336 00:14:06,660 --> 00:14:08,870 و این CS50. 337 00:14:08,870 --> 00:14:10,499