[Powered by Google Translate] دیوید مالان: این CS50، و این است که از آغاز هفته 1.
چیزی که ما فکر ما می خواهم انجام دهید این است که نگاهی به پشت در
چیزی که بسیاری از شما احتمالا در گذشته برای برخی راه می رفت
ساعت هم اکنون و ممکن است نگاه کمی آشنا باشد.
این چیز در اینجا، البته این در -
مخاطب: علم.
DAVID مالان: مرکز علوم.
پس این است که در واقع یکی از اولین رایانه های
بازگشت از از 1940s.
این یکی از اولین کامپیوتر الکترومکانیکی بود
بود که قادر به خصوص طولانی،
محاسبات خود پایدار است، و چیزی است که ما در واقع در دیدن
مرکز علمی است که تنها یک قطعه کوچک از این چیز.
چیزی که ما فکر می کنیم پس از آن می خواهم انجام است که نگاهی به پشت در یک ویدیو
که چند وقت پیش ساخته شده بود، به معرفی این
چیزی به جهان است.
و شما از موسیقی و صدا که در واقع آن را مشاهده کنید
بسیار خوشحال بار بودند.
>> [پخش VIDEO]
-A پیروزی از مهارت های ریاضی و مکانیکی این است
ماشین حساب بزرگ جدید به صورت خودکار در دانشگاه هاروارد.
مشکلات پیچیده در ریاضیات، از طریق قرار دادن
دستگاه در شکل رمزی بر روی نوار، با دقت در حل
بخش دقیقه از زمان مورد نیاز برای انسان
محاسبه.
طراحی شده برای تسریع همه اشکال ریاضی و علمی
پژوهش، مغز بزرگ مکانیکی متحده کار می کنند
ایالات نیروی دریایی تا پایان جنگ.
>> دیوید مالان: پس چه شما ممکن است ندانید این است که آن را در
این دستگاه که یک مدت همه ما در حال حاضر بسیار زیادی را در
برای داده، که یک اشکال ابداع شد.
بنابراین یکی از مهندسان مشغول به کار در این کامپیوتر
به معنای واقعی کلمه در بر داشت یک پروانه کوچک در ماشین که منجر به
در برخی از محاسبات نادرست است.
و به عنوان داستان می رود که پروانه به این سیاهه ضبط شد
مجله در اینجا، از سپتامبر 9 در سال 1940 چیزی،
و به این ترتیب برای جهان متولد شد و اصطلاح "اشکال" است.
بنابراین پس از نظر ما اشکالات به هر نوع اشتباه در
برنامه ها، اعم از انسان ساخته شده و یا در این مورد، حشرات.
>> تا چند اطلاعیه ها، به عنوان ادامه دهید.
بنابراین CS50 دارای یک سنت ارائه ناهار از انواع در
اکثر جمعه ها در طول ترم، که در آن ما را 30 تا
40 دانش آموزان را به آتش و یخ در میدان گاه به گاه
chitchat، بحث در مورد علوم کامپیوتر،
صحبت کردن در مورد آینده.
فارغ التحصیلان و دوستان دعوت می کنیم از صنعت گرفته تا چت کردن
دانش آموزان نیز هست.
واقعا نسبت به پایان ساخت یک کلاس نسبتا بزرگ
همه صمیمی تر است، حداقل یک بار در در حالی که برای
زیر مجموعه ای از دانش آموزان.
بنابراین اگر شما می خواهم به ما پیوستن به این جمعه، 01:15 PM، به
CS50.net/lunch به RSVP.
و ما رو تو این recurringly انجام دهید، بنابراین نگران نباشید اگر شما
در میان 30 اولین و یا در این هفته است.
>> بنابراین یادداشت های کاتب.
یک کلمه در منابع که در حال حاضر شروع به در دسترس بودن
به دانش آموزان در کلاس.
به طوری که سر شما لازم نیست در طول سخنرانی ها
تند پایین همه چیز را من می گویم و به این ترتیب، آنچه که ما انجام می دهند
به جای آن از کارکنان آموزش
مجموعه ای از یادداشت های متعارف است.
بنابراین ما باید یکی از همراهان آموزش ما، اندرو Sellergren،
که می نشیند در هر هفته، بررسی فیلم ها، و پس از آن
می نویسد: آنچه که ما فکر می کنم نسبتا
مجموعه ای از یادداشت ها معتبر است.
و مایل اندرو، همچنین، از قرار دادن پانوشت snarky
پایین.
بنابراین شما امیدوارم خواهید این کار را به عنوان یک کتاب مرجع برای لذت بردن از
سرگرم کننده است، و همچنین، می آیند زمان مسابقه، به عنوان یک فرصت برای این فایل نقد می نویسید:
آنچه اتفاق افتاده است در سخنرانی فردی است.
بنابراین کسانی که در صفحه سخنرانی پیوند خورده است.
>> مجموعه ای مشکل 0، در عین حال، خارج شده است.
و در از لحاظ منابع در دسترس به شما -
walkthrough.
میلو برای اولین بار در روز جمعه منجر شده است.
فیلم برداری شد، قرار داده آنلاین شنبه.
و بنابراین، درک اگر شما واقعا مطمئن شوید که در آن برای شروع نیست،
برای این و یا در آینده p-مجموعه، همیشه برای اولین بار به نوبه خود
walkthrough یا آن ویدئو.
برش در حال انجام است؛ در cs50.net/section است که در آن شما
باید اولویت های خود را، ارائه، اگر شما
در حال حاضر، امروز است.
از آنجا که بخش خواهد شد این یکشنبه آینده، روز دوشنبه آغاز شود،
و سه شنبه.
ما بخش های این سه روز، هر هفته
ترم در بیشتر قسمت ها.
و ما نیز، معرفی دوباره، آهنگ متفاوت است.
بنابراین شما می شود در این شکل برش، اگر شما
آن را در حال حاضر، اگر شما در میان کسانی که کمتر هستید
راحت، راحت تر، و یا جایی در میان.
و اگر شما مرتب کردن بر اساس هستید بر روی نرده ها، به طور کلی در جایی در
بین آن چیزی است که اکثر دانش آموزان تا پایان بررسی می باشد.
ساعات اداری شروع امشب.
>> پس ابتدا کلید نسبتا کم است، حتی اگر آن را کاملا طبیعی
به اجرا را به اشکالات مختلف، و یا نامشخص است که چگونه به
پیاده سازی چیزی.
به طوری که ما در ساعات اداری در این هفته شروع به درک.
آنها در آننبرگ دوشنبه، سه شنبه، چهارشنبه،
پنجشنبه، از 8:00 PM 11:00 PM در طول استراحت مغز است.
classmen بالا می توانید دریافت کنید، و اگر شما تا به حال مشکل گرفتن
در درب، زیرا آنها می شود کشیدن، فقط راه خود را صحبت کنید
و در توضیح شما با CS50 هستیم.
به طور معمول 20 تا 30، از، ما را در کارکنان وجود دارد خواهد بود برای کمک به
شما یک بر روی یک.
>> به محض ورود به این ایده این است که شما می توانید لپ تاپ خود را به ارمغان بیاورد،
شما شارژر خود را داشته باشد، ما را به کابل برق اضافی داشته باشد،
به خصوص در طول دیوار جنوب آننبرگ که در آن
بسیاری از رسانه های الکتریکی وجود دارد.
و در نقطه ورودی اصلی به دفتر ساعت Q & A را برای رفتن به
cs50.net/discuss و ارسال
سوال شما وجود دارد.
و به برچسب آن را با pset 0 یا pset 1، هر هفته
ممکن است اتفاق می افتد.
و پس از آن چه خواهیم انجام دهیم این است که یک جدول از همراهان آموزش
و دستیاران البته، به طور کلی 8 یا 10 و یا پس از تماس با ما،
رفتن را از طریق، نگه داشتن یک چشم ناظر در هیئت مدیره، و
برداشت کردن سوالات واقعا به سرعت به عنوان ما می توانیم،
اشاره شما به پست های مرتبط در صورتی که شما در آن یافت نشد
خودتان، منابع آنلاین، به عنوان مناسب.
و پس از آن اگر مشکلی وجود دارد، به عنوان وجود دارد به ناچار
خواهد بود، یا آن را حس می کند برای نشستن یکی در یکی،
کار با مشکلات با کسی.
>> یا شما فقط در ساعات اداری می آیند واقعا
نیاز است که طرز فکر.
شما نمی خواهید از طریق فرم الکترونیکی،
واقعا می خواهید با کسی ملاقات کند.
برقراری ارتباط است که به ما، و چه اتفاقی خواهد افتاد وقتی است که شما
سوال شده است توسط یک عضو هیات دیده می شود، و ما
تعیین، آره، این، باید به یکی از 20 یا اعزام
30 عضو تیم اینجا محلی، شما را در بالا سمت چپ این
کمی را وارد کنید بر روی دکمه صف شروع به چشمک زن در cs50.net /
بحث خواهد شد.
و این است به شما بگویند که شما در حال حاضر دعوت شده است، به طوری که
به صحبت می کنند، صف را وارد کنید.
و با کلیک کردن بر روی آن دکمه، سپس نام خود را بر روی به نظر می رسد
اپل که greeter CS50، یکی از سر درس،
برگزاری در نزدیکی در ورودی آننبرگ، که خواهد شد و سپس
را به عنوان تصویر کشیده شده در اینجا، دانش آموزانی که به سوالات مطرح شده در
سمت چپ، اعضای هیات که در حال حاضر در سمت راست است.
و با یک کلیک از چپ و راست، مرورگر وب شما
شروع به چشمک می زنند و به زودی به عنوان، به عنوان مثال، پروفسور McGonnagal
آماده است تا شما را در یک جدول خاص در آننبرگ را ببینید.
>> بنابراین ما برخی از این سال گذشته است.
ما راه اندازی دوباره (Reboot) اجرا ساعات اداری و
خیلی از نرم افزار دوباره اجرا می شده است.
به طوری که این گرم می شود تا این هفته تحقق بخشند.
اما همچنین بیش از حد درک، در سال های گذشته، همانطور که شما ممکن است شنیده ام
از دوستان، ساعات اداری در واقع 50 تا
150 دانش آموز در یک بار.
و آن را به سادگی امکان پذیر نمی باشد برای ما که مسئولیت رسیدگی به این
به طور موثر، یک در یک، در طول شب است.
و بنابراین، آنچه ما واقعا به تلاش برای انجام این کار سال است
سرمایه گذاری بر روی این واقعیت است که بسیاری از پرسش ها
مکررا پرسیده می شود و می تواند اغلب بهتر پاسخ داده شود
ناهمگام است.
بنابراین شما می توانید از فکر می کنم از طریق واکنش کارکنان مرتب سازی بر اساس:
و ما می توانیم از طریق کد شما فکر می کنم، بدون گرم
فشار لزوما مبارزه
از طریق آن کنار به کنار.
بنابراین ما تخمین می زنند که حدود یک سوم یا نیمی از پرسش ها
در فرد خواهد شد اعزام شده است، و ما سعی خواهیم کرد به شهامت کردن به عنوان
بسیاری به عنوان یک نیمه یا بیشتر الکترونیکی،
در ساعات اداری.
و ما همچنان به استفاده از بحث و
در طول هفته نیز می باشد.
>> و در نهایت، درک کنند که این دوره را می توان به پاس / خرابی.
بنابراین اگر شما در حصار و یا فقط فکر می کنم که شما واقعا
مطمئن نیستید اگر این است که جهان را برای شما، و یا این است که واقعا
کاملا خارجی را به شما، که این یک راه فوق العاده
تا برخی از به دست آوردن اعتماد به نفس است که با آن قدم به
کلاس، مثل من رک و پوست کنده، سال ها پیش.
و پس از آن پنج هفته به شکل مرتب کردن بر اساس
خود را اگر شما می خواهید به ماندن در پاس / خرابی، به نامه تغییر دهید
درجه، و یا مانند.
و به طور معمول چه پاس / خرابی می کند، من فکر می کنم، برای دانش آموزان است
که اگر شما در آن 10 ساعت، 20 ساعت، هر آنچه در آن قرار داده است
ممکن است در برخی از مشکلات، و شما در حال کوبیدن سر خود را
در برابر دیوار،
و شما واقعا فقط می تواند چیزی را تعقیب نمی کردن، و شما
بسیاری از چیزهای دیگر که شما نیاز به انجام صادقانه، آنچه که من
فکر می کنم پاس / خرابی است، آن را به لبه
موقعیت های شبیه به آن.
جایی که شما چیزی که 90 درصد از راه است.
شما می دانید، آن را کاملا بی نقص نیست.
اما شما به تعداد زیادی از آن، با این حال.
پس پاس / شکست دادن به شما که در نظر
مدل ذهنی، شاید.
>> تمامی حقوق، به طوری که در هفته گذشته ما را به ابتدا کبوتر، و ما
صحبت در مورد برنامه نویسی در سطح نسبتا بالا و گرافیکی.
و امروز ما را به گذار به زبان
به نام C، یک زبان برنامه نویسی سطح پایین تر در بالای
که بسیاری از زبان های مدرن در حال حاضر ساخته شده است، از جمله برخی از
از آنهایی را که ما استفاده خواهیم کرد نسبت به پایان مدت.
و به نحوی، چه آنها مانند نگاه
آیا همه کاملا مشابه است.
بنابراین شروع این انتقال را در اینجا بگذارید.
بنابراین این برنامه در هفته گذشته است که ساده بود
خوش آمدید برنامه های جهان.
آن را به سادگی به صفحه سلام جهان، چاپ شده با
حباب سخنرانی کمی بیرون آمدن از گربه.
خوب، اگر ما شروع به ترجمه خود را به دیگری
زبان، درک کنند که از ایده های امروز و در روز چهارشنبه
یکسان هستند، اما نحو شروع به تغییر میکند.
بنابراین در حالی که در هفته گذشته داشتیم، زمانی که پرچم سبز کلیک، می گویند
سلام جهان.
امروز ما در حال رفتن به هوشمند، اصلی، باطل، printf،
بازگشت، با برخی از نحو دیگر در نیز وجود دارد.
آکولاد، و پرانتز، و به نقل از، و فلان چیز.
اما متوجه باشید که هسته اصلی این ایده در اینجا چاپ
و در نهایت این واقعیت است که اصلی در حال حاضر رفتن به
مترادف با شروع یک برنامه است.
صفحه اصلی خواهد بود که در آن پرچم سبز لگد همه چیز خاموش است.
>> بنابراین در حال حاضر کسی را دست انداختن هم جدا برخی از بلوک های ساختمان
قبل از اینکه ما به برخی از نمونه های بتن شیرجه رفتن.
بنابراین ما نام این هفته بیانیه ای آخرین، بر این اساس، آن را فقط
آموزش.
آیا این است - در این مورد، می گویند سلام جهان.
و در C، اگر ما درست است که خط نگاه کنید، این است که چگونه ما
رفتن به شروع به ابراز آن قطعه پازل خاص:
printf ("سلام جهان")؛
و در حال حاضر ما این را از هم جدا و بیشتر و بیشتر در طول زمان کسی را دست انداختن،
اما متوجه باشید که یک الگو در اینجا وجود دارد.
بنابراین، ما این چیزی که به نام printf است که
اساسا شبیه به کلمه بگو.
این چیزی است که آن را برای انجام این کار است.
Printf و F در اینجا به معنای "فرمت".
پس از آن فقط معنی است که شما می توانید وارد
جزئیات مختلف زیبایی
بنابراین نقل و قول تمام نقل قول آغاز آنچه که ما در حال رفتن است
برای شروع به فراخوانی یک رشته است.
یک کلمه، یک عبارت، یک جمله است.
یک رشته در یک زبان برنامه نویسی، دنباله ای از صفر است
یا بیشتر حرف می باشد.
بنابراین H-e-l-l-O، کاما، و غیره است،
نقل قول نقل قول را تمام کردن، یک رشته است.
و در حال حاضر N اسلش، کمی نحوی عجیب و غریب، اما ما
در حال حاضر که هفته گذشته به معنای آنچه که تعریف شده است؟
این فقط یک خط جدید است.
این تنها راه انتقال به کامپیوتر شما می خواهید
معادل ضربه را وارد کنید وجود دارد، اما به شما نمی کنند
می خواهم در واقع ضربه وارد کنید و به همین دلیل ظروف سرباز یا مسافر تا همه
قالب برنامه های واقعی خود را.
پرانتز محصور این رشته، پرانتز باز و
نزدیک پرانتز، و در داخل است که رشته ما.
به خاطر این که به این دلیل در C، و سایر برنامه نویسی
زبان، چیزهایی مانند printf استدلال، را و یا گرفتن
پارامترها.
>> بنابراین در حال حاضر این بلوک نظرات بنفش به عنوان یک فکر شروع می شود
تابع، به عنوان یک روش به عنوان یک روش است.
شما واقعا می توانید آن را هر آنچه که شما در حال حاضر می خواهید تماس بگیرید، اما
این نوع از برنامه های مینیاتوری که تنها یک
چیز، در یک خط، نه کمتر.
بنابراین printf نیز چیزی است که ما قصد داریم به شروع به فراخوانی
تابع و توابع انجام کاری - در این مورد
چاپ یک رشته فرمت به صفحه -
اما توابع همچنین استدلال ها یا پارامتر را.
و با استدلال و یا استفاده از پارامترها، از شما تشکر می کنم، منظور ما
که رفتار آنها را می توان تحت تاثیر چیزی است که شما را در عبور
در داخل پرانتز.
بنابراین در این مورد، نیاز printf گفته شود چه چیزی را چاپ کنید، و ما
تنها در تصویب، در دو نقل قول در اینجا، رشته ای است که ما
در واقع می خواهم برای چاپ.
و نقطه و ویرگول در انتهای این خط فقط یک
تاریخی مزاحم به موجب آن در پایان بسیاری از خطوط کد،
قرار دادن یک نقطه و ویرگول را فوق العاده روشن به کامپیوتر
که این خط از کد را در اینجا به پایان می رسد.
در حال حاضر این خوب است چرا که همانگونه که خواهید دید به عنوان برنامه های بیشتر
پیچیده، نقطه و ویرگول فوق العاده برای ما روشن انسانها را می سازند،
و همچنین کامپیوتر، که در آن خطوط شروع و پایان کد.
متوجه باشید که برخی از زبان برخی از
این جزئیات.
و در واقع، در جاوا اسکریپت، شما همیشه نیاز نیست چیزی
مانند نقطه و ویرگول بدین.
اما بیشتر که در آن آمده است.
>> بنابراین حلقه.
ما تا به حال چیزی شبیه به این، به طور مستقیم، واضح، انجام
چیزی دوباره و دوباره و دوباره.
مانند قرار دادن بر روی جوراب، یا سلام، در این مورد است.
خوب، شروع امروز در C، ما می تواند این خراش بیان
بلوک به عنوان در حالی که (درست) printf ("Hello World" را).
بنابراین متوجه ما شروع به ساختن به معنای واقعی کلمه در پازل
تکه ای از قبل.
ما باید همان بلوک بنفش است، اما آن را در داخل این
براکت برای همیشه لطفا برای بلوک، و بهترین راه برای ترجمه که
به C است به شرح زیر است.
هیچ برای همیشه لطفا برای کلید واژه وجود دارد.
شما نمی توانید فقط تایپ F-O-R-e-V-e-R در C.
بنابراین نزدیکترین آنالوگ در حالی است که.
>> در حال حاضر، در حالی که (درست است) به نظر می رسد کمی احمقانه است چون از ارزش
تغییر واقعی همیشه؟
احتمالا نه.
مانند گفت: در حالی که یکی، در حالی که، در حالی که درست است.
این همان چیزی است، درست است که همیشه مورد.
بنابراین این حلقه است که در واقع القای چه نوع از حلقه؟
فقط یک حلقه بی نهایت، درست است.
یک حلقه برای همیشه لطفا برای و یا به عنوان ما آن را به نام هفته گذشته،
فقط یک حلقه بی نهایت می شود.
بنابراین گاهی اوقات که بد است.
گاهی اوقات که یک اشکال، گاهی اوقات به همین دلیل است که شما می توانید
توپ ساحل چرخان و یا ساعت شنی یا مانند.
اما در این مورد، ما به عمد، به هر
دلیل، می خواستم دوباره به چاپ همان چیزی که
و دوباره و دوباره.
و یا در مورد به مانند یک ساعت مچی، شما می خواهید به انجام
چیزی دوباره و دوباره و دوباره.
بنابراین حلقه های نامتناهی ممکن است حس کند.
و این است که چگونه در C ممکن است ما برای همیشه لطفا برای ترجمه به کد.
>> بنابراین در حال حاضر این یکی کمی مشخص تر است.
ما تا به حال 10 بار تکرار این بیانیه به شرح زیر است.
بنابراین در حالی که (واقعیت) می کند نه کاملا کار وجود دارد، زیرا درست است
همیشه درست است.
بنابراین اگر ما به جای در نسخه C نگاه کنید، در حال حاضر نحو می شود
کمی بیشتر مرموز.
اما صادقانه باشد هنگامی که شما شروع به دیدن این، آن را تمام می شود
خیلی آشنا به سرعت.
پس این همان چیزی است که یک حلقه به نام.
حلقه که به رایانه برای انجام کاری
دوباره و دوباره و دوباره تا زمانی که
این چیزها حقیقت دارند.
در حال حاضر آنچه ما با آن چیست؟
خوب، سه بخش وجود دارد را به یک حلقه، و ما در حال رفتن به
دوباره به این کار را در چارچوب واقعی
نمونه هایی در یک لحظه.
پس نگران نباشید اگر آن در همه در یک بار کاملا غرق.
اما من بین المللی = 0 است، داستان کوتاه مدت، گفت: من را
متغیر که از نوع صحیح است، بنابراین من به شماره
به نام من، و مقداردهی اولیه آن را به 0.
این است که به من مانند X متغیر جبری و
مقداردهی اولیه آن را به 0.
اما در این مورد، ما آن را به نام من.
سپس در وسط، آن را می گوید من این است که کمتر از 10 است.
که گفتن کامپیوتر مسائل زیر را تا زمانی
من به عنوان کمتر از 10 است.
و بدیهی است که از آن شروع می شود کمتر از 10 به دلیل
آن را از 0 شروع می شود.
سپس در نهایت، شما شاید می تواند آنچه که من + + به معنای حدس بزنید.
این کمی از نحو که فقط به معنی افزایش من به.
پس از شماره 1 تا اضافه کنم، دوباره و دوباره و دوباره.
>> و بنابراین به عنوان ما به این حلقه، این نحو، نه، پیاده سازی
دقیقا همان چیزی است که، رک و پوست کنده، در ابتدا فقط تا
بسیار ساده تر به بیان است.
تکرار 10، و شما انجام می شود.
در C، و در بسیاری از زبان های برنامه نویسی، ما باید
کمی بیشتر آموزنده برای کامپیوتر است و در واقع
مشخص چیزی شبیه به این.
اما ما را دوباره به این و نحو دیگر.
>> در مورد متغیرهای؟
به خراش ما تا به حال چیزی شبیه به این بلوک نارنجی،
جایی که من می تواند یک متغیر را اعلام می دارد.
بیایید خودسرانه به مقابله با آن است.
اجازه دهید آن را مقداردهی اولیه تا 0، و پس از آن
اجازه دهید برای همیشه لطفا برای انجام کاری.
در این حالت در ابتدا من گفت: مقابله، به طوری که
گربه برای رفتن به یک حباب در گفتار کمی است که صحبت کردن
تعدادی که در این متغیر است.
و پس از آن ما باید شمارنده تغییر 1.
پس از این همه در داخل یک قفل برای همیشه لطفا برای پیچیده می شود.
بنابراین ما در حال حاضر در حال حاضر بلوک های ساختمان در C با
که به ترجمه این.
>> یکی از راه های که می تواند انجام دهد این است.
یک عدد صحیح به من بده، با مقابله با آن است.
مقداردهی اولیه آن را به 0
در خط اول وجود دارد.
در حالی که (درست است)، بنابراین من دزدیدن این ایده از یک لحظه
پیش، جلو بروید و زیر را انجام دهید.
نسخه قابل چاپ کردن کانتر، و پس از آن افزایش کانتر،
دوباره، و دوباره، و دوباره.
یا دوباره، + + فقط به معنی اضافه کردن 1 به چیزی.
اما یک قطعه جدید از نحو در اینجا وجود دارد.
بیرون پریدن را از جمله نمونه های قبلی ما است؟
بله، این د.
بنابراین شاید شما می توانید آنچه که در حال انجام استنباط، رک و پوست کنده، بر اساس
چه بلوک خراش در حال انجام است.
اما باز هم در C، ما فقط باید کمی بیشتر خاص
هنگامی که آن را به بیان خودمان می آید.
>> بنابراین printf ("٪ D \ N").
خوب بسیاری از ما دور می تواند پرتاب به عنوان آشنا.
به نقل از فقط بدان معنی است که یک رشته، اسلش N
فقط یک خط جدید است.
بنابراین تنها چیزی که در اینجا D٪ است.
و تمام است که یک حفره یا سوراخ می باشد.
D٪ است به معنی یک عدد دهدهی است.
و٪ d وسیله کامپیوتر، قرار دادن یک عدد دهدهی.
خب، چه تعداد می خواهید برای قرار دادن وجود دارد؟
خوب، شما شاید می تواند استنباط، بعد از کاما ما می گویند
مقابله، که به نام یک متغیر است که ما اعلام شده یا
ایجاد دو خط قبل است.
پس این تنها راه اتصال در یک متغیر را به C
رشته به صورت پویا.
از آنجا که در مقابل، اگر من تا به حال به جای چیزی مثل انجام می شود
این، printf ("ضد")، چه به این
برنامه به جای انجام دهید، احتمالا؟
آن را به معنای واقعی کلمه باید "ضد" چاپ.
کدام اثر است که من می خواهم نیست.
من نیاز به برخی از ارزش عددی جایگزین.
کنیم که توابع و سپس ببینید، مانند printf، نمی توانند
فقط تنها استدلال، مانند
"سلام جهان".
آنها می توانند نقل قول کاما از هم نقل قول را تمام کردن، گرفتن و پس از آن برخی از متغیرهای
که متصل به دریافت، به عنوان ما به رشته های قبلی را ببینید
از طریق این متغیرهایی نشانه٪.
>> خب آنچه در مورد عبارات بولی؟
عبارات بولی، این ارزش ها، درست یا نادرست بود.
آری یا نه.
0 یا 1.
روشن یا خاموش.
بنابراین در ابتدا شبیه به این، و توجه کنید که
بلوک پایین در اینجا است که در واقع همراه
دو بلوک کوچکتر.
بنابراین من از نوع کشیده شده و کاهش یافته است سه قطعه پازل
با هم را که پازل قطعه دیگر وجود دارد به طوری که من
می تواند این ایده را که من می خواهم X به کمتر از Y و انتقال
Y به کمتر از Z.
و بنابراین من می توانید این دو خط مجزا به شرح زیر را ترجمه کنید.
بالا می تواند به جزئیات به C ترجمه،
تنها با X <Y.
شاید با برخی از پرانتز برای اندازه گیری خوب است.
و پس از آن در C، شما نوشتن نیست و به معنی
رابطه از چیزی.
شما به جای && بنویسید.
و همانطور که ما در نهایت خواهید دید، تنها علامت اتفاق می افتد
معنی چیزی متفاوت است.
بنابراین && فقط بیانگر گزینه ای است که پاسخ دادن به آن ایده و.
>> تا دوباره، حتی اگر این شروع به نگاه نه پیچیده،
یکی از اهداف معرفی خراش، علاوه بر
فقط با داشتن نوعی از لذت راه را بر روی سطح شیب دار که در آن شما می توانید انجام دهید
چیزی که بسیار گرافیکی و متحرک، و
اشتراک گذاری و مانند آن است، نیز برای انتقال این ایده که
همه از ایده های ما شروع به غواصی را به امروز و بعد
شده اند در حتی که ساده تجسم
رابط پس از یک روز است.
در مورد این یکی در اینجا چه؟
>> بنابراین شرایط.
بنابراین بلوک خراش در سمت چپ وجود دارد به نظر می رسد
کمی پیچیده تر است.
اما آن را فقط به برخی از کشیدن و
دفع تکه آشنا.
اگر x کمتر از Y است، بگویید.
دیگری اگر x بزرگتر از Y است، بگویید.
دیگری، ما منطقا می توانید آن را استنباط فرض کنیم که
آنها باید برابر باشد.
بنابراین می گویند که آنها با هم برابر هستند.
در حال حاضر در C در سمت راست، دقیقا همین است.
و توجه کنید که آکولاد برای رفتن به یک
از ویژگی های C و زبان های دیگر که این کار را مرتب سازی بر اساس
داده ها با یگدیگر.
درست مثل اگر بلوک این چیز زرد رنگ که مرتب سازی بر اساس
گرفتن بلوک بنفش در داخل آن.
به همین ترتیب این پرانتز -
این پرانتز فرفری -
به معنای به التماس کردن که همان ایده با استقبال یک یا چند
خط از کد را که در داخل از آنها فاصله دار.
بنابراین در سمت راست در اینجا، اگر x کمتر از Y، printf
("X کمتر از Y است).
دیگری اگر x بزرگتر از Y، چاپ کردن همان.
دیگری را چاپ کرده است که آنها با هم برابر هستند.
>> بنابراین به طور خلاصه، یک نگاشت نسبتا مستقیم و یا ترجمه وجود دارد
از زبان ما تا کنون دیده ایم، از جمله برای برخی از
از ویژگی های پیچیده تر.
بنابراین شما ممکن است با استفاده از این برای پروژه خود، یا ممکن نیست
با استفاده از این برای پروژه های خود را در این هفته است.
اما ما باید این چیزهایی که آرایه ها در C به خراش به نام،
آنها نام لیست
و این با RPG Fruitcraft دیدم هفته گذشته است.
پسر کوچک آبی که در حال قدم زدن در اطراف، چیدن
گیلاس و پرتقال و مانند آن است.
خوب در ابتدا، که با این پرتقال اجرا شده است
بلوک که شامل واژه ها، در این مورد، ما به معنای واقعی کلمه
اضافه کردن "پرتقال" را به
متغیر به نام موجودی.
بنابراین در C، این نحو است که برای به دست آوردن کمی بیشتر مرموز.
و ما به عقب آمدن به این هفته بعدی و انجام کارهای بیشتر
چیزهای جالب در جهان از رمزنگاری با آن است.
اما در پایین این دو خط در اصل
ترجمه به آنچه که ما در حال انجام یک خراش مسدود کردن وجود دارد.
اما بیشتر که در آن آمده است.
>> پس از آن کنار هم قرار دادن، در اینجا یک برنامه در C. پس بیایید
به سرعت از هم جدا اذیت برخی از قطعات نحو در اینجا، اما
پس از آن اجازه دهید در واقع شروع به نوشتن مقداری کد، آشنا
شما با برخی از ابزار که ما استفاده خواهیم کرد، و اگر ما
در حال حاضر ساخت برخی از این بلوک های ساختمانی پایه
در هفته گذشته، در حال حاضر به نحوی در C. بنابراین در بالای در اینجا، این
شاید یکی از خسته کننده ترین برنامه شما می توانید
نوشتن در بسیاری از هر زبان برنامه نویسی.
اما مرتب کردن بر اساس آن را از معنا و مفهوم خاصی دارد، زیرا این
برنامه های متعارف که هر دانشمند کامپیوتر می نویسد که
آموزش کسی یک زبان برنامه نویسی -
برنامه سلام جهان.
>> بنابراین در بسیار بالا، ما می بینیم که این مفهوم # شامل
و پس از آن، در براکت زاویه دار، stdio.h.
ما قصد داریم تا دوباره به آن، اما واقعا آنچه را که
بدان معنی است که یک فایل در این دنیا به نام استاندارد وجود دارد
I / O، stdio نقطه H، و این فقط یک فایل متنی است که
کسی نوشت سال پیش است.
و در داخل فایل متنی است که یک دسته کل
توابع، یا روش و یا روش، که شخص دیگری
نوشت که ما ذینفع زیرا ما
هم اکنون می توانید استفاده از کد آن شخص است.
توابع او نوشت.
در این مورد، printf چیزی نیست که من نوشتم، آن را
چیزی که CS50 نوشت.
این چیزی است که کسی نوشت: سال ها پیش قرار داده و در
فایلی به نام stdio.h و پس از آن، به عنوان به کنار، قرار داده است
بخش دیگری از تابع در یک فایل دیگر است.
اما ما وجود دارد.
>> # شامل تنها راه ما گفت، در
C، به من دسترسی به توابع است که شخص دیگری نوشت.
و در این مورد من دلیل اهمیت دارد که من می خواهم printf است.
در حال حاضر ما اعضای هیات تحریریه اصلی (خالی).
پس این یکی از این چیزها، رک و پوست کنده، که در روز 0،
بسیار من به نوع خارج منطقه ام، زیرا این تنها
جالب نیست
فکری، برخی از نحو.
اما در حال حاضر می دانیم که توابع، در غیر این صورت به عنوان شناخته شده
روش یا روش ها، به طور کلی برخی از ارزش تولید کند.
آنها کاری انجام دهیم.
آنها می آیند تا با یک جواب است.
آنها تولید خروجی.
بعدی نوع int اصلی این است که تنها راه مختصر ما را از گفتن
که این تابع، این روش، در نهایت رفتن
به شما یک عدد است.
به همین دلیل است که ما خواهیم آمد.
صفحه اصلی تنها به طور پیش فرض استاندارد جهانی به طور پیش فرض
تابعی که در یک برنامه C اعدام هنگامی صورت می گیرد که
شما آن را اجرا کنید.
خالی فقط به معنی این چیز، اصلی، طول می کشد
استدلال در این مورد است.
بنابراین من این است که فوق العاده صریح و روشن است.
هیچ رشته ای در آن وجود دارد وجود دارد، هیچ کاما از هم وجود دارد.
خالی یعنی بدون آرگومان به اصلی.
>> خوشبختانه، در حال حاضر در نهایت، دو خط آخر آشنا هستند.
در داخل آکولاد ما printf
و ما باید یک بازگشت است.
و بازگشت از نوع مایه تاسف است که ما را به
قرار داده و از آن وجود دارد، چرا که در این مورد آن است که همه انجام نمی
بسیاری از علاقه است.
اما در یک برنامه کامپیوتری، زمانی که یک تابع 0،
این بدان معناست که همه خوب است.
هیچ چیزی را اشتباه رفت.
در مقابل، اگر یک تابع 1 یا 1 منفی و یا
1337 منفی و یا برخی از اعداد تصادفی مانند آن، که
به طور کلی به این معنی است که یک خطا در واقع رخ داده است.
بنابراین اگر شما را بر روی مک خود و یا PC خود را، اگر شما تا به حال دیدم
برخی از پیام آزار دهنده است چرا که کامپیوتر شما خراب شده است و یا
یخ زده، و یک پیام خطا مرموز وجود دارد،
و پس از آن برخی از کد، مانند کد سیستم
1،2،3،4، برخی از،
که به طور کلی از جزئیات غیر ضروری را به گفتن است
بسیاری از ما انسانها، اما این چیزی است که برخی از عملکرد و یا برخی از
برنامه در واقع بازگشت، یک مقدار غیر صفر است.
و مزیت آن این است که 0 به معنی به خوبی، و
پس شما اساسا باید یک تعداد نامحدود از چیزهایی که
می تواند به اشتباه است.
به همین دلیل است که آنها را انتخاب 0 برای خوب و یک مقدار غیر صفر
بد، به عنوان ما به زودی خواهیم دید.
>> پس جلو بروید و نوشتن.
به طوری که روز دیگر مک من من استفاده می شود برای باز کردن یک به یاد
پنجره ترمینال، و پس از آن را باز کردم تا برنامه متن، مانند
TextEdit، و من شروع به نوشتن مقداری کد است.
خوب است که خوب است.
اما تجربه شما متفاوت خواهد بود بر روی مک، و یا
سولاریس بر روی یک کامپیوتر، یک کامپیوتر لینوکس، هر عامل
سیستم شما اتفاق می افتد با استفاده از.
و بنابراین در این دوره، چیزی است که ما به جای آن به استفاده از چیزی است که
نام لوازم خانگی CS50.
بنابراین لوازم CS50 دانلود یک قطعه از نرم افزار
است که اجازه می دهد تا شما را به اجرای سیستم عامل لینوکس،
به طور خاص فدورا لینوکس، خود را در مک و یا کامپیوتر شما.
و شما این کار را با دانلود چیزی به نام یک Hypervisor.
پس از این مشکل در مجموعه 1 مستند.
و شما نسبت به آنچه که شما برای دانلود نیاز به هدایت می شده است.
اما نتیجه نهایی، که آیا شما یک مک و یا PC شما می باشد
دانلود برخی از نرم افزار رایگان.
بعد از آن شما لوازم CS50، دانلود و به شما بگویم که
نرم افزار آزاد - hypervisor -
برای اجرای لوازم خانگی CS50 در یک پنجره بر روی کامپیوتر شما.
و آنچه اتفاق می افتد این است.
>> من در حال حاضر، توجه در اینجا، آنچه به نظر می رسد یک دسکتاپ
محیط زیست است.
و به من اجازه در واقع کوچک این پنجره واحد است.
بنابراین این در حال حاضر مک من است، در اینجا با یک پنجره کوچک در داخل و
از این پنجره اتفاق می افتد به طور کامل
سیستم عامل های مختلف است.
در واقع در این منوی شروع را در اینجا وجود دارد، یادآور
ویندوز، که یک دسته کامل از منوهای فرعی، از جمله
لینک به CS50 کتابچه راهنمای کاربر، Dropbox به، و مانند آن.
و چه این محیط در حال حاضر یک محیط استاندارد
که همه ما در حال حاضر می توانید استفاده کنید، به طوری که بدون توجه به آنچه شما
کامپیوتر است، چیزی که شما بر روی آن نصب شده است، چه نسخه ای
سیستم عامل مکینتاش یا ویندوز شما در حال اجرا، همه ما در حال حاضر
همان محیط است.
و در حال حاضر در این محیط می توانید شروع به نوشتن مقداری کد است.
>> بنابراین من قصد دارم به جلو بروید و باز کردن یک برنامه به نام gedit.
این است که قابل مقایسه با notepad.exe را، و یا
TextEdit در مک.
و این فقط یک برنامه فوق العاده ساده متن در حال ویرایش است
که در نگاه اول به نظر می رسد، مثل این.
در حال حاضر بسیار بالا، من یک پالت سفید، در پایین
این پنجره سیاه و سفید است که می گوید دستگاه jharvard @.
چرا که به حساب کاربری ای که ما از قبل ایجاد شده
برای همه به نام جان هاروارد.
او دارای یک پوشه که در آن تمام فایل های خود را در حال رفتن به، و
در اینجا که در آن ما می توانیم شروع به نوشتن مقداری کد است.
پس اجازه دهید من جلو بروید اینجا و زوم فقط در یک بیت، و من
رفتن به انجام # ، اعضای هیات تحریریه اصلی (خالی)، شامل و
سپس من قصد دارم برای انجام printf ("Hello World" را)
؛ بازگشت 0.
در حال حاضر این است که همه چیز کاملا سیاه و سفید است.
>> اجازه دهید من به جلو بروید و یک چیز gedit چیزی است که من برای آموزش
در واقع انجام می دهند.
اجازه بدهید به عنوان ذخیره.
من قصد دارم در سمت چپ اینجا را انتخاب کنید jharvard.
بنابراین دوباره، حتی اگر شما لینوکس قبل از استفاده می شود هرگز، رک و پوست کنده
این روزها، همه آنها در حال واگذاری به اصل
همان نوع از رابط -
سیستم عامل مک، ویندوز و لینوکس است.
بنابراین من تصمیم پوشه خانه jharvard در اینجا.
و من قصد دارم برای ذخیره این فایل به عنوان hello.c.
بنابراین در بسیار بالا، من hello.c تایپ نامگذاری C
برنامه با فرمت ج
عمل رایج است.
و من ضربه نجات دهد.
و در حال حاضر چه خوب است که من به طور موثر آموزش داده gedit،
که این یک برنامه C است.
توجه داشته باشید که متن سیاه و سفید من در حال حاضر به رنگی، یا
ترکیب نحوی برجسته، که تنها جلب توجه من به
معنایی قطعات مختلف این برنامه است.
در بالا سمت چپ وجود دارد، به عنوان برنامه های من پیچیده تر، من
رفتن به خلاصه ای از تمام چیزهایی که من نوشته اند.
به طوری که از آن وجود دارد.
بنابراین من در حال حاضر زوم کردن و رفتن به پایین این پنجره ترمینال.
>> پس این است که شاید برای بسیاری از مردم است.
اگر شما یک محیط خط فرمان استفاده می شود هرگز، تو هرگز
DOS استفاده می شود، یا شما لینوکس استفاده می شود هرگز، و یا هرگز باز کرده اید
پنجره ترمینال سیستم عامل مک، بسیاری از چیزهایی که شما وجود دارد
با GUI، مانند اشاره و کلیک کردن می تواند انجام دهد، و
کشیدن، و رها، و مانند آن، اما به طور کلی -
قطعا در جهان علوم کامپیوتر -
با استفاده از خط فرمان، جایی که شما ماوس خود را ندارد
به طور کلی، شما فقط باید صفحه کلید خود را، است که در واقع یک مقدار زیادی است
از رابط کاربری قدرتمند تر است، هنگامی که شما را وادار به سازگار
دستورات مختلف.
و شما خود را از نیاز به نقطه مرتب کردن و کلیک کنید
در همه چیز.
بنابراین در gedit خواهیم مرتب کردن بر اساس از بهترین موسیقی دو دنیا (دنیای شخصی ودنیای هنری) را اجرامی کنید.
ما می توانیم با کشیدن و رها کردن متن، ما می توانیم آن را ببینید
به خوبی و رنگی.
اما وقتی که می آید زمان برای اجرای برنامه های ما، ما برخی اوقات شما
فقط این پنجره کوچک استفاده کنید.
>> بنابراین من قصد دارم به جلو بروید و این کار را انجام.
در پایین پنجره سیاه و سفید، من قصد دارم به جلو بروید
و نوشتن صدای جرنگ جرنگ.
و صدای جرنگ جرنگ نام یک کامپایلر است.
این برنامه ای است که تبدیل به کد منبع
بنابراین، به، کد شیء.
0s و و 1S، که ما شاهد به طور خلاصه در هفته گذشته است.
به یاد بیاورید از هفته گذشته، به ما وعده داده است که ما قرار بود به
از چیزی شبیه به این - ما نیاز به
چیزی شبیه به این -
و این قطعا چیزی است که یک انسان نیست
را انجام دهید.
بنابراین به جای ما قصد استفاده از یک برنامه، و برنامه در
این مورد به نام صدای جرنگ جرنگ.
و نام برنامه hello.c است.
لذا به منظور کامپایل hello.c از کد منبع را به
کد شیء، یا 0s و 1S، و باید آن را کافی برای انجام درست
و این ضربه را وارد کنید.
>> خوب، هیچ چیز به نظر می رسد که اتفاق افتاده است.
اما من در حال حاضر، از هفته گذشته می دانم، که این نام به طور پیش فرض از
یک برنامه، زمانی که در C نوشته شده است، احمقانه به نام a.out.
بیشترین میزان علاقه به نام شما می توانید آمد تا با.
اولین حرف از حروف الفبا، از آن چیزی است که بود
خروجی، اما پس از آن می شود.
این برنامه من است، و در حال حاضر نقطه بریده بریده، که خواهیم دید، این است که
در واقع فقط یک نوع از ویژگی های امنیتی، به دلیل
a.out یک برنامه است که به من نوشت.
با کامپیوتر من آمده است، آن
در فایل های برنامه نیست.
آن را در پوشه برنامه های کاربردی سیستم عامل مک نیست.
من باید صریح فوق العاده با کامپیوتر، و می گویند
این برنامه، a.out است، در پوشه کنونی،
دایرکتوری جاری است.
و راه را به شما نشان دهنده این کار را در یک محیط شبیه به این
نقطه نشان دهنده هر پوشه شما در حال حاضر شوید.
و غیره. / حالت فقط بدان معناست a.out اجرا
در پوشه جاری است.
و من برای اجرای این را وارد کنید، و voila، اولین برنامه من است.
>> در حال حاضر یک گام به عقب بگذارید.
این پنجره کمی کوچک است، و ببینی که پایین
در سمت چپ دستگاه در اینجا آیکون دیگری است.
یکی از کروم است، که باید بسیار آشنا، فقط یک وب سایت
مرورگر در داخل دستگاه است.
این آیکون سیاه و سفید فقط یک
پنجره ترمینال بزرگتر است.
بنابراین اگر می شود کمی آزار دهنده است به گونه فقط
این قطعه کمی کوچک یک پنجره که با آن به تعامل
با برنامه ها، ما به جای آن می توانید این کار را انجام دهند.
و در حال حاضر اجازه من شروع به تایپ چند به زودی
به دستورات آشنا.
LS.
بنابراین LS فرمان برای لیست است.
بنابراین در سیستم عامل مکینتاش یا ویندوز، شما به طور کلی، دو برابر کلیک کنید
پوشه و پس از آن، voila، همه از فایل های مختلف به شما مراجعه کنید
و پوشه ها.
در یک محیط خط فرمان، که در آن شما فقط می توانید تایپ کنید
دستورات و یا متن، LS معادل است.
پس من چه چیزی در این پوشه را نشان می دهد.
>> در حال حاضر یک دسته از مسائل وجود دارد که در اینجا هر دو کمی
آشنا و ناآشنا کمی.
اما توجه کنید که درست مثل ویندوز و Mac OS، jharvard
یک پوشه دسکتاپ است.
بنابراین هر آیکون که بر روی میز من هستند اتفاق می افتد
می شود که در آن پوشه.
پوشه، مطالبی که وجود دارد
کروم ممکن است وجود داشته قرار داده است.
Dropbox به است.
بنابراین دستگاه همراه با ساخته شده است در پشتیبانی از Dropbox به
به طوری که در طول ترم، شما می توانید با Dropbox خود را همگام
حساب به طوری که در تمام برنامه های خود را در حمایت کردن.
آنها بر روی کامپیوتر های دیگر شما در دسترس است.
اگر تا کنون هر چیزی را اشتباه می رود با دستگاه، شما می توانید
به راحتی از Dropbox بهبود می یابند.
به طوری که پوشه وجود دارد که.
دو فایل وجود دارد که من ساخته شده - hello.c
و a.out.
و سپس به سمت راست برخی از پوشه های دیگری نیز وجود دارد که می
به سوی پایان ترم، با وب سایت
برنامه نویسی.
بنابراین، هنگامی که من انجام می دهم. / a.out، وارد، که گفت: برو
در دایرکتوری، دایرکتوری جاری هستم، و اجرای
برنامه ای به نام a.out سمت راست وجود دارد.
>> همه حق است، به طوری که خوب و خوب است، اما این همه که نه
فوتی و فوری برای نوشتن یک برنامه به نام کمک a.out.
بنابراین، ما در واقع می تواند این کار کمی متفاوت است.
بنابراین به جای استفاده از فقط صدای جرنگ جرنگ در حال اجرا، hello.c، اجازه دهید اضافه کردن
آنچه که به نام یک آرگومان خط فرمان است.
پس آرگومان خط فرمان، و یا سوئیچ در این مورد، تنها است.
یکی دیگر از کلمه یا عبارتی که شما را در یک اعلان پس از تایپ
برنامه ای که می خواهید را به اجرا.
بنابراین در این مورد، صدای جرنگ جرنگ برنامه من می خواهم برای اجرا،-O
خروجی وسیله یک فایل است که دیگر به نام a.out.
خروجی یک فایل به نام سلام، و این کار را با گردآوری
حرف آخر را در خط، hello.c.
بنابراین در کوتاه مدت، این بهبود بسیار حاشیه ای است، که به موجب آن
به جای با داشتن این ابلهانه به نام a.out فایل،
من در حال حاضر می توانید صدای جرنگ جرنگ-O سلام، پس از آن hello.c انجام دهید، و
را وارد کنید و سپس ضربه.
هیچ چیز به نظر می رسد اتفاق می افتد، اما دوباره خیلی دوست دارم با 0 - وقتی که
هیچ چیز به نظر می رسد اتفاق می افتد این بدان معناست که هیچ کار اشتباهی اتفاق افتاده است -
بنابراین انجام LS اکنون اجازه دهید، را وارد کنید، و در واقع من در حال حاضر
یک برنامه خوش آمدید.
بنابراین اگر من تایپ میهمان در حال حاضر، فرمان یافت نشد.
OK. /.
بنابراین دقیقا درست است.
به دلیل این برنامه را نوشت، و آن را نمی آمد
کامپیوتر / سلام، را وارد کنید، به این معنی است
من در حال حاضر در حال اجرا سلام.
>> به طوری که در آن وجود دارد.
در حال حاضر آنچه ما در نهایت باید به خط فرمان بیشتر و بیشتر دریافت کنید
استدلال است که به ما اجازه می دهد برای انجام این کار بیشتر است، اما فقط برای کسانی که برای
آنها ممکن است این کلاه قدیمی، اجازه دهید من در واقع به
دایرکتوری اینجا و فقط به شما یک تیزر از چه روش دیگری ما را
می تواند در مورد اجرای سلام جهان.
اجازه بدهید به اینجا بروید، و من قصد دارم به آن را باز کنید.
پس در واقع، من قصد دارم به توضیح آنچه که من انجام می دهند، به طوری که
این بسیار مفید است.
اجازه بدهید به عقب.
>> پس من انجام شده است این زمان طولانی است.
در سمت راست متوجه یک زن و شوهر وجود دارد
دایرکتوریها است که عجیب به نام source1m و source1w.
این کنوانسیون فقط احمقانه استفاده می کنیم.
منبع فقط بدان معناست کد منبع 1: این هفته، و
متر بدان معنی است که دوشنبه و W به معنی آن چهارشنبه.
بنابراین هیچ چیز مرموز وجود دارد.
این فقط نماد مختصر.
این چیزها آبی پوشه، در غیر این صورت به عنوان شناخته شده
دایرکتوری ها.
من می خواهم به آن پوشه حالا برو، و در یک کامپیوتر عادی
من فقط می تواند بر روی آیکون پوشه دوبار کلیک کنید و
تمام فایل های من وجود دارد.
اما در محیط خط فرمان، من کاملا نمی تواند انجام دهد
که، تا به جای آن، من باید برای تغییر دایرکتوری دستی.
بنابراین اگر من از نوع سی دی و پس از آن source1m، را وارد کنید، توجه کنید که
سریع من، چیزی که در رنگ سفید در سمت چپ، به تازگی تغییر کرده است.
و به این ترتیب در واقع، زمانی که آن را فقط گفت: پرانتز و پس از آن
کمی موج دار شدن، نماد ریشه یابی لغات، که فقط به معنای من
در پوشه خانه جان هاروارد، اسناد خود را در من،
فایل های شخصی خود را.
اما در حال حاضر در پرانتز آن را می گوید ~ / source1m.
این حالت فقط بدان معناست من در یک پوشه به نام source1m
که در دایرکتوری خانگی جان هاروارد.
بنابراین اگر من در حال حاضر می خواهید به لیست فایل ها در این پوشه، آسان
سوال، من فقط تایپ LS.
و در حال حاضر تمام فایل ها می بینم که من از قبل ایجاد شده برای امروز
سخنرانی، که همه، یا بیشتر از آن، اتفاق می افتد
برای پایان دادن به در ج.
>> پس جلو بروید و gedit اجرا از برنامه ای به نام اجازه
holloway.c، است که توسط برخی از هکرها تصادفی نوشته شده است
در اینترنت، به نظر می رسد که یک کمی شبیه به این.
و ما قصد داریم از طریق این یکی در هر
جزئیات، اما برای کسانی که راحت تر، به طور خاص، اگر
شما می خواهید را به حدس و گمان به آنچه که این برنامه می کند.
مطمئن باشید که آیا شما در حال کمتر و راحت تر،
ما به این نوع از چیزی که حتی پایان
این ترم.
این است نمونه ای از مسابقه مبهم C، که
به معنی نوشتن مرموز ترین به دنبال برنامه شما احتمالا
می تواند به شکست دادن افراد دیگر هوشمند، که به طور مشابه
تلاش برای نوشتن و نشان می دهد که آنها می توانند به نوشتن
چیزهای مرموز تر از شما است.
بنابراین این یک نمونه از یک برنامه به خوبی نوشته شده است از
چشم انداز سبک، این یک نمونه از برنامه ای است که
برنده مسابقه، برای مردم در تلاش برای
مبهم و انتزاعی است.
>> بنابراین اگر ما در اجرای این چیزی، اجازه دهید من به پنجره ترمینال من
پس به صحبت می کنند.
بنابراین این محیط سیاه و سفید است که به نام
پنجره ترمینال به طور کلی.
اجازه بدهید من به جلو بروید و آن را کامپایل.
من می خواهم به استفاده از صدای جرنگ جرنگ، چرا که این برنامه این است که
کمی مرموز است و آن نیاز به یک
کامپایلر، یکی به نام GCC.
اما این کار همان چیزی است.
طول می کشد تا کد منبع به کد شیء.
و حالا اگر من را اجرا a.out، که برنامه شما
فقط دیدم این کار را.
به طوری که شخص در آن سال به دست آورد که مسابقه.
به هر حال، ما در این جهت، در هر سه رفتن نیست.
>> پس در واقع سعی کنید اجازه دهید تا به حال کسی را دست انداختن هم جدا چیزی است که ما می توانیم انجام دهیم
با این بلوک های ساختمانی پایه را بیشتر و بیشتر
برنامه های جالب.
بنابراین ما یک برنامه نوشته ام، ما اجرای برنامه است.
در حال حاضر ما در واقع می تواند ساده و دیگر لازم نیست برای نوشتن
صدای جرنگ جرنگ کلمه در اعلان.
به نظر می رسد به عنوان برنامه های ما را دریافت مرموز تر، ما می توانیم، یا
پیچیده تر نه، ما در واقع می توانید این دستور را اجرا کنید.
پس به من اجازه برگشت به دایرکتوری خانه ام، پس به صحبت می کنند، اجازه دهید به من
حذف - کنترل از راه دور دستور زیر حذف - I'm رفتن به حذف
فایل با نام a.out و سلام.
و در حال حاضر در یک محیط خط فرمان اطلاع، بسیار شبیه به در
GUI، شما را برانگیخت. من می توانم یک دکمه کلیک کنید نیست، من
به نوع Y برای بله، y بله.
و حالا اگر LS من تایپ دوباره، توجه کنید که کسانی که سبز
برنامه - a.out و سلام -
از بین رفته اند.
مراقب باشید RM.
این می تواند چیزهای بد، درست مثل شما می توانید با کشیدن
همه چیز را به سطل زباله خود را.
>> بنابراین در حال حاضر اجازه دهید به پیش - و من می توانم این کار را انجام دهند - صدای جرنگ جرنگ-O
خوش آمدید، خوش آمدید -
من در حال حاضر بی حوصله تایپ کردن که فرمان است.
حتی اگر من تایپ آن را کمی به سرعت.
بنابراین ما به جای آن می تواند باعث خوش آمدید انجام دهد.
است تا یک کامپایلر نیست.
این فقط یک برنامه دوستانه است که همراه با لینوکس، در این
مورد - سیستم عامل -
این خودکار که روند کامپایل برنامه است.
بنابراین به جای به خاطر سپردن نام فایل صدای جرنگ جرنگ-O و
سپس به همین ترتیب، به ویژه پس از آن خطوط دیگر و
دیگر، من فقط باعث می شود که می نویسم.
و این است که رفتن به تف کردن یک دسته از مسائل که
ما در نهایت باید این ترم را ببینید.
اما توجه کنید در حال حاضر اگر من LS نوع، خوش آمدید در دایرکتوری من.
و در واقع من می توانید آن را با اجرا / سلام.
بنابراین مطمئن فقط خودکار فرایند های در حال اجرا چه بود،
در این مورد، بسیار طولانی، پیچیده تر فرمان.
بنابراین ما در حال رفتن به شروع به استفاده از ساخت، فقط به خاطر اینکه خیلی
بیشتر کاربر پسند.
>> اما در حال حاضر انجام برنامه جالب به شما اجازه می دهد تا
از فقط می گویند خوش آمدید.
بنابراین در برنامه نوشته ایم تا کنون اصلی وجود دارد.
که تنها چیزی که به طور پیش فرض است که آغاز همه چیز خاموش است.
اما توابع دیگر وجود دارد خارج وجود دارد، و
stdio.h چیزی که ما در بالا از ما شاهد است
قبل از اینکه فایل، و این چیزی است که به عنوان کتابخانه استاندارد شناخته شده است.
داخل کتابخانه استاندارد یک دسته کامل از توابع است
که کسی دیگری نوشته است، و ما می توانیم شروع به استفاده از این
توابع به نوشتن بیشتر
برنامه های جالب خودمان.
>> پس من به عقب برویم به دستگاه اجازه می دهد.
من قصد دارم برای بستن این پنجره ترمینال.
من قصد دارم به بستن چیزهایی که ما نوشت: در اوایل، و فقط به
به hello.c، متوجه شده و در حال حاضر من می توانم زیر را انجام دهید.
سلام جهان است که همه جالب نیست، من می خواهم به
به فرد این برنامه برای خودم.
بنابراین به جای گفتن جهان، من قصد دارم به
جلو بروید و می گویند -
من می توانم دیوید نوع - اما این واقعا نوعی از
اساسا یکسان است.
اما اجازه دهید سعی کنید این ایده مکان نگه دار.
به یاد بیاورید که در C، و نه در printf، ما تا به حال این
متغیرهایی وجود دارد و بیش از D٪ فقط است.
بنابراین درصد بود، بررسی سلامت عقل سریع.
بسیار خوب، تعداد اعشار، که در آن است.
رقم دهدهی است، که همه.
بنابراین C٪، همانطور که ما با آن مواجه است، رفتن به یک شخصیت است.
قرار دادن یک شخصیت در اینجا، یک نامه از طریق Z،
یا نماد نقطه گذاری.
شخصیت مجرد، F٪، هر کسی که از زبان های دیگر می دانید؟
بنابراین یک مقدار ممیز شناور است.
یک عدد حقیقی است.
بنابراین یک عدد اعشاری - این است که در واقع یک شماره واقعی با
نقطه اعشار، و برخی از تعدادی از ارقام به سمت چپ
و حق آن است.
٪ s را رشته است.
که یکی از ما در حال رفتن به اغلب.
یک رشته، دوباره، فقط یک کلمه، یک عبارت، دنباله ای از
شخصیت های منحصر به فرد.
و در نهایت، LLD؟
پس این است که بیشتر در مورد گوشه ای.
طولانی، دهدهی طولانی است.
بنابراین اگر شما می خواهید فقط یک شماره است که این بزرگ، شما نمی
می خواهید یک شماره بزرگتر، شما در حال رفتن به مشخص
رایانه ای است که آن را از یک اندازه خاص است.
>> بنابراین نیشگون گرفتن و کشیدن این بیت کمی اجازه دهید.
نه از فقط کد سخت داوود، اجازه دهید من کمی
به صورت پویا٪ s را می گویند.
٪ s را در اینجا قرار دهید، که یک حفره یا سوراخ برای یک رشته است.
سپس من می توانم با کاما، و پس از آن "دیوید" در اینجا.
در حال حاضر این است که همه آن نیست که فکری جالب،
چرا که من انجام داده ام در حال حاضر است که واقعا کار بیشتر برای ایجاد
کامپیوتر است.
به جای اینکه بگوید کامپیوتر این همه در یک بار، من در حال حاضر
گفت: انجام این کار و وارد کردن یک رشته در نهایت، کاما،
در اینجا این است که رشته می باشد.
بنابراین این یک بهبود بهتر نیست، اما آن را در حداقل
یک گام به سمت یک برنامه جالب تر است.
چرا که در حال حاضر، به من اجازه رفتن به جلو و این پنجره را کمی
بزرگتر، به من اجازه رفتن به جلو و اجرا را خوش آمدید.
و در حال حاضر، / a.out است کار نمی کند، چرا؟
همه حق است، در حال حاضر آن را به نام سلام.
بنابراین دوباره، و همچنین صدای جرنگ جرنگ با یک O-، تغییر نام داد
برنامه به چیزی جالب تر است.
و voila: در حال حاضر از آن می گوید: سلام دیوید.
>> همه حق است، هنوز هم یک برنامه احمقانه است.
بنابراین در حال حاضر در واقع رفتن به عقب و معرفی مفهوم
یک متغیر است.
آیا آن را نمی شود خوب اگر من می تواند یک متغیر را اعلام
که نوع رشته ای است؟
و ارزش متغیر در واقع از کاربر می آید
او و یا خودش.
پس خودسرانه، من قصد دارم به تماس ها متغیر است، که
فقط یک قرارداد مشترک هنگامی که شما به یک متغیر به نام
رشته است.
من قصد دارم برای انجام این کار علامت مساوی، و سپس من قصد دارم به تماس
تابع به نام GetString.
بنابراین GetString چیزی است که می آید به C. این ساخته شده است نمی باشد.
یک تابع است که کارکنان CS50 نوشت، واقعا فقط برای
این چند هفته اول، به منظور ساده سازی روند
گرفتن ورودی کاربر و به دست آوردن ورودی کاربر در فرم
از رشته ها، و یا اعداد، و چنین است.
بنابراین GetString مانند printf، اما بدیهی است که به جای
چاپ آن را به انجام آنچه که نام خود را می گوید، یک رشته را دریافت کنید.
اما برای استفاده از GetString، ما قصد داریم به تغییر را به
در اینجا، فراتر از این است.
بنابراین به طور مستقیم، این برنامه، امیدوارم، در جریان است به نحوی
دریافت یک رشته از کاربر، و سپس آن را به انجام
با این رشته، به نام S؟
این فقط رفتن به آن را چاپ کنید، درست است؟
هنوز نه یک برنامه محرک به دلیل تمام این رفتن
برای انجام این کار افزونه در آن مقدار را به جایی که٪ s را
می گوید که باید بروم.
>> پس حداقل این را در عمل کنیم.
اجازه بدهید من ذخیره و بزرگنمایی.
در حال حاضر در پنجره ترمینال من را، تکه کوچک از یک،
اجازه دهید دوباره به من را خوش آمدید.
خوب، و آه، لعنت، من یک دسته کامل از خطاها.
اجازه دهید من رفته است، و ما می بینیم اول ما -
بنابراین در واقع این کار را در یک پنجره و حتی بزرگتر به طوری که به شما اجازه می
می توانید ببینید که چه بد من خراب -
بنابراین خوش آمدید کند.
خوب، که یک فاجعه است، درست است؟
من سه خط از کد را نوشته، و
داده من 12 خطاها است.
پس چرا؟
خوشبختانه، اغلب اوقات زمانی که می بینید بسیاری از، بسیاری از اشتباهات
تف کردن را در یک بار، آن را واقعا فقط به دلیل اینکه
اشتباه گرفته کامپیوتر اینجا کلیک کنید.
و آن را باقی مانده از آن زمان می شود را در اینجا اشتباه گرفته شده است.
و پس از آن شروع به قطع و سکندری، و
تف کردن چیزهای ترسناک تر از واقع صادق است.
بنابراین به طور کلی، همیشه با یکی از بالا شروع می شود.
>> بنابراین بسیار بالا ترین نمونه از قرمز،
این پیغام خطا است.
استفاده از شناسه رشته اعلام نشده، اما من
میانگین استاندارد در؟
من این کار را نکرد.
من به معنای رشته، اما دلیل این است که، بیش از حد، واژه رشته
که من با استفاده از شفاهی در واقع
در C یا وجود ندارد.
این چیزی است که ما را فقط برای دو هفته اول و یا استفاده کنید
در اینجا، اما آن را در یک فایل به نام cs50.h. وجود دارد
بنابراین در حال حاضر، می دانیم که این کتابخانه وجود دارد که
کارکنان نوشت، پس از آن نوشته شده است به تازگی از
stdio.h.
اما در داخل cs50.h تعریف، مترادف
انواع که باعث ایجاد کلمه این رشته است.
>> بنابراین در حال حاضر من به بازگشت به پنجره ترمینال من.
من قصد دارم برای پاک کردن این ظروف سرباز یا مسافر توسط کلیدهای Ctrl-L. خواهیم کرد فقط
پاک کردن همه چیز را پاک، و من رفتن به جلو و
باز هم سلام، را وارد کنید.
بنابراین آنچه اتفاق افتاده است در حال حاضر؟
در حال حاضر تمام کسانی که اشتباهات رفت.
بنابراین آنچه که من واقعا انجام می شود؟
من فقط کامپیوتر تدریس این رشته وجود دارد، و آن را
در آن فایل به نام cs50.h.
بنابراین شکایت، زیرا در حال حاضر شما می دانید که در آن برای پیدا کردن متوقف
اعلامیه که تابع پس به صحبت می کنند.
که در آن در جهان وجود دارد.
>> بنابراین در حال حاضر من قصد دارم به جلو بروید و آن را اجرا خوش آمدید.
من به نظر می رسد به یک حلقه بی نهایت، هیچ چیز اتفاق می افتد.
بنابراین من نیاز به تایپ چیزی در اینجا، درست است.
اولین خط از کد در برنامه من GetString شد.
پس از آن به معنای واقعی کلمه در حال انتظار برای من برای گرفتن یک رشته است.
بنابراین در این معنا بله، آن یک حلقه بی نهایت می باشد.
ظاهرا در GetString رفتار پیش فرض است که ما
نوشت: - کارکنان -
که فقط می گوید صبر کنید و صبر کنید و صبر کنید و صبر کنید و صبر کنید،
تا زمانی که کاربر به شما می دهد یک رشته را با تایپ کردن چیزی وارد
I-D، وارد کنید - من به جلو بروید و در نوع D-a-V به شما اجازه می دهد تا.
و از آن است که وجود دارد، سلام دیوید.
>> در حال حاضر آیا این به نظر می رسد مانند آن را فقط قانون است؟
اجازه بدهید من به جلو بروید و تایپ تامی.
را وارد کنید، بسیار خوب، به نظر می رسد به کار است.
این نسخهها کار میکند برای راب، با این نسخهها کار برای Zamyla، با این نسخهها کار برای - درست است.
پس از آن رفتن به محل کار، به احتمال زیاد.
بنابراین باید آن را چاپ از هر آنچه که ما در واقع آن را،
و ما می تواند کمی مشکل باشد.
بیایید ببینیم که اگر ما چیزی شبیه به خوش آمدید.
می توانید بروید در اینجا، اجازه دهید را ببینید، کپی، چسباندن.
من نخواهد بود قادر به رب است که چند بار در اینجا.
رب، خوب، کلید Shift + کلیدهای Ctrl + V. بنابراین چه چیزی
اتفاق می افتد که اینجا بد؟
>> خوب، پس، segfaults.
پس برخی از شما با پیشینه های قبلی می دانید که
به طور کلی، به رایانه های بسیاری از ورودی ها زمانی که آنها
احتمالا معنا نیست که برای دریافت نام های طولانی مثل این - بد
همه چیز اتفاق می افتد.
در واقع، در دنیای وب، بیش از حد، این اتفاق می افتد بسیار کمی،
به موجب آن هنگامی که شما در حال طراحی یک وب سایت، زمانی که شما
طراحی فیس بوک، شما را مجبور به تصمیم گیری های خودسرانه تا
جلو، چه مدت طول خواهد کسی
فیس بوک نام کاربری خواهد بود؟
یا چه مدت به نام اولین کسی خواهد بود؟
چه مدت طول خواهد شماره تلفن کسی می شود و مانند آن.
و اگر برنامه نویسان را به پیش فرض های بد، برنامه های شکسته
دلیل این که شما سعی می کنید به آنها خروجی، ورودی بیشتر
در عوض، از آنها دارای حافظه.
یا RAM اختصاص داده شده برای آن، و بنابراین اگر در حال حاضر من ضربه را وارد کنید.
که برنامه در واقع کار می کرد، از آنجا که ما در کتابخانه
و ما در واقع این مورد خاص پیش بینی شده است.
اما بدون شک این ترم، به شما خواهد شد حداقل یک ارسال
برنامه ای است که این کلمات را می گویند.
به یاد داشته باشید این هفته از هم اکنون، شاید دو روز از زمان حاضر.
گسل تقسیم بندی یک چیز بد است.
این خود را به انجام چیزی که از کامپیوتر مراجعه کنید
انتظار نداشت.
و در آن صورت، شما، برنامه نویس، آیا پیش بینی نیست.
چه این شمع از جوراب های مختلفی وجود دارد دوست
موارد گوشه ای مواجه می شوند.
به طور مشابه در برنامه اگر شما پیش بینی نیست که چه مدت است
نام کسی خواهد بود.
یا چه می شود اگر من یک کاربر مخرب، و او یا نام او است
در واقع بسیار کوتاه است، اما آنها فقط تلاش
به یک ظرف غذا با من؟
چه می خواهم به رفتار برنامه من؟
خب، در آن صورت، چیزی که در واقع ممکن است سقوط.
>> بنابراین این کار را کنیم.
در 90 دقیقه، این زمان طولانی افتضاح است
برای انجام این کار به علم کامپیوتر است.
چرا به عادت مصرف پنج دقیقه ما نمی کنید
شکستن در اینجا، و زمانی که ما آمده ایم، ما به برخی از شیرجه
برنامه های پیچیده تر و قانع کننده تر؟
پنج دقیقه.
>> بسیار خوب.
به همین دلیل یک نظر سریع است.
به من گفته شده که هر چند این بود که بر روی صفحه نمایش قبل از آن، چه
از دهان من بیرون آمد cs50.net/rsvp.
این درست است. cs50.net/lunch.
بنابراین در حال حاضر شما ممکن است سعی کنید RSVPing / ناهار.
اما اجازه دهید این کار را در حال حاضر.
بنابراین این فوق العاده سریع، فوق العاده جدید برای بسیاری از مردمی بوده است.
کلاه های قدیمی برای برخی افراد است.
بنابراین عقب برای یک لحظه اجازه دهید و ببینید که چگونه ما به رو
این خروجی سلام جهان فقط یک لحظه پیش.
>> بنابراین برای اولین بار، این دستگاه CS50 وجود دارد.
باز هم، تکه ای از نرم افزار، مشکل مجموعه 1 رفتن برای گفتن
شما چگونه به آن را دانلود کنید، جایی که به آن را دانلود کنید، چه را کلیک کنید
و غیره.
و پس از آن هنگامی که شما به دنبال آن دسته از دستورالعمل، شما قادر خواهید بود
به حداکثر رساندن پنجره خود را، و مک یا PC خود را نگاه کنید
چیزی کمی شبیه به این.
یک پس زمینه سیاه و سفید، یک پوشه به صفحه اصلی در بالای صفحه که در آن تمام
فایل های خود را به سطل زباله می تواند در سمت چپ بالا،
یک منو در پایین است.
تا دوباره، بسیار در روح شبیه به سیستم عامل مکینتاش یا ویندوز،
حتی اگر آن اتفاق می افتد به لینوکس.
بنابراین آنچه که ما بعد کاری انجام دهید؟
خب، ما شروع به نوشتن برنامه.
و به یاد بیاورید از هفته گذشته که همه آن را می کشد برای نوشتن
برنامه یک ویرایشگر متن ساده است،
مانند دفترچه یادداشت و یا TextEdit.
صادقانه بگویم، شما می توانید حتی مایکروسافت ورد استفاده کنید.
اما چیزهای بد در نهایت خواهد شد، رخ می دهد چرا که بسیار
دست سنگین راه حل برای نوشتن یک برنامه، به علاوه آن را به
ذخیره آن در قالب فایل اشتباه.
اما این فقط یک ویرایشگر متن، یک واژه پرداز، این است که
مورد نیاز برای نوشتن یک برنامه.
>> بنابراین در لوازم CS50، ما می توانیم این کار را در یکی از راه های ساده انجام دهید.
ما فقط می توانید بر روی این آیکون در پایین سمت چپ کلیک کنید.
و دوباره، مشکل مجموعه 1 خواهد شما را از این توصیه، و voila -
شما می توانید از این رابط های سیاه و سفید که در آن ما می توانیم شروع به
نوشتن کد.
بنابراین شروع به نوشتن یک برنامه فوق العاده ساده دوباره اجازه.
من قصد دارم تا فایل، ذخیره، و من قصد دارم به تماس
این، اجازه دهید می گویند، hello2.c.
و من فقط آن را گفتن با کلیک کردن بر روی jharvard، آن را
در دایرکتوری خانگی خود، من واقعا نمی مراقبت
که این یکی می رود.
و سپس ذخیره.
و در حال حاضر من می توانم شروع به نوشتن برنامه.
و من از پیش از آن که من آن را برای نوشتن بین المللی به خاطر
اصلی (خالی).
زوم در بالا سمت چپ.
و بعد من می خواهم بگویم printf، دو.
و در حال حاضر یک خط جدید، نقل قول نزدیک، نزدیک
پرانتز، نقطه و ویرگول بدین شکل است.
و پس از آن من به پایین در اینجا به پنجره ترمینال من که
جاسازی شده در gedit، فقط برای راحتی.
و من رفتن به جلو و نوشتن را خوش آمدید، اما نه
خوش آمدید به تنهایی، hello2.
>> بنابراین فایل به نام hello2.c. پرونده من در نتیجه
باید به نام hello2، در این مورد است.
Dammit، آنچه که من انجام می دهیم اشتباه بود؟
همه حق است، بنابراین من به وضوح حذف یک خط، اگر شما را به یاد چه
برنامه قبلی شبیه است.
اما اجازه دهید را ببینید اگر ما می توانیم از این از هم جدا نیست کسی را دست انداختن.
متاسفانه، بسیاری از افراد که به نوشتن برنامه ها است که با آن
ما به نوشتن برنامه ها به انجام کارهای ساده نیست که به خوبی.
بنابراین ما باید به نوع شیر خامه گرفته بیش از آنچه که کاملا
حس و ببینید اگر ما می توانند بفهمند چه چیزی اشتباه است.
خط اول می گوید: به طور ضمنی اعلام C وجود دارد
تابع printf کتابخانه با نوع int است.
OK، من درک بخشی از آن است.
اما به نظر می رسد اشاره به این واقعیت است که من با استفاده از printf
اشتباه است، به نحوی.
و چه حس اشتباه است؟
من فقط کامپیوتر است که آن را در یک فایل آموزش
به نام stdio.h.
در حال حاضر من فقط به فقط حفظ در حال حاضر که printf است
در stdio.h، و در واقع خواهید بود وجود دارد دیگر
توابع در آن فایل در همان که ما استفاده خواهیم به.
>> بنابراین در حال حاضر من به جلو و ضربه کلید Ctrl-L فقط به پاک کردن اجازه دهید که
دور، عمل را hello2 و هورا.
و این دستور دوباره، پیچیده تر از ما خواهید برای را توضیح دهد
اهداف امروز.
اما این صدای جرنگ جرنگ اجرا بود، و صدای جرنگ جرنگ کد منبع طول می کشد و
تف 0s و و 1S است.
و کسانی که 0s و 1S در این مورد به نام چه؟
بسیار خوب، کد شیء.
و فایل است که آنها را در هستی نامیده می شود، بنابراین،
hello2، در این مورد است.
از آنجا که فایل متنی من بود hello2.c را وارد کنید.
و در حال حاضر من دو نقطه علامت تعجب، علامت تعجب
نقطه، علامت تعجب.
همه حق است، بنابراین ما در حال حاضر توانایی برای به دست آوردن رشته،
ظاهرا.
خب، چه چیز دیگری می تواند ما را از کاربران دریافت کنم؟
>> و در کتابخانه CS50، توابع دیگر وجود دارد که
رفتن به ساده کردن زندگی ما در این چند روز اول است.
GetChar، GetDouble، GetFloat، GetInt،
GetLongLong، GetString.
خوب، اجازه دهید شهامت کردن ساده ترین این اولین بار است.
GetString به معنای واقعی کلمه ندارد که.
این فقط نشسته وجود دارد، انتظار برای کاربر به تایپ چیزی در،
و به زودی به عنوان چیزی که من تایپ و Enter را فشار دهید، آن
آیا چیزی که با ارزش است.
پس بازگشت که به عنوان مثال اجازه دهید تا ببینید که دقیقا همان چیزی است که
GetString انجام شده بود.
اجازه بدهید به جلو و باز کردن را در gedit، hello.c، و به یاد آوردن
که درست قبل از استراحت، این است که ما به سمت چپ خاموش است.
>> بنابراین در حال حاضر کسی را دست انداختن این به جز در جزئیات کمی بیشتر کنیم.
بنابراین در خط 6، دو چیز وجود دارد
در حال حاضر اتفاق می افتد.
ورود به سیستم برابر جدا شدن نیمه اول و نیمه دوم.
بنابراین در سمت چپ علامت مساوی، ما
گفت: رشته ها.
و پس از آن، شرایط فقط شخص غیر روحانی است، رشته ها چه چیزی است
انجام می دهند، آیا شما فکر می کنید؟
ایجاد چه؟
پس از آن ایجاد رشته نامیده میشود.
در حال حاضر چه که واقعا چیست؟
خوب، آن را رزرو فضا برای یک رشته به نام های.
که کاملا درست نیست.
چه انجام شده است؟
کامپیوتر خوب، همانطور که می دانید، دیسک های سخت، که در آن
فایل های خود را ذخیره می شوند.
کامپیوتر RAM، و این که در آن برنامه ها لود شده
در حالی که آنها در حال اجرا هستند.
بنابراین، هنگامی که شما با دوبار کلیک بر روی آیکون و مایکروسافت ورد باز می شود
بالا، مایکروسافت ورد، در حال اجرا است، پس به صحبت می کنند، در RAM است که
بخش الکترونیکی را از کامپیوتر شما.
نه فیزیکی، بخش مکانیکی است که ریسندگی، که در آن
داده است به طور کلی بلند مدت ذخیره می شود.
بنابراین رشته ها تقریبا گفتن به کامپیوتر من را
به اندازه کافی رم به تناسب رشته.
حالا که کمی ساده است، چرا که
چقدر بزرگ است رشته می شود؟
خوب ما در واقع نمی دانم هنوز رتبهدهی نشده است، بنابراین در هفته به
ما در واقع می خواهید به عقب کشیدن لایه است که در رشته و
ما شما را به آنچه که واقعا هست را بگویید.
رشته، در حال حاضر، فقط ساده سازی خوبی از جهان ما است.
اما رشته ها اعلام کرد که یک رشته به نام ها، در حال حاضر.
اعلام رشته.
این ذخایر برخی از فضا در RAM برای رشته کاربر
در مورد به نوع.
>> در حال حاضر نگاه کنید در سمت راست علامت مساوی کنیم.
GetString () آن را می گوید.
و کمی سلامت عقل را بررسی کنید.
واقعیت این است که هیچ چیزی را در داخل پرانتز وجود دارد
دلالت دارد آنچه در مورد GetString؟
این طول می کشد بدون آرگومان.
به این معنا که شما می توانید رفتار خود را در هر راه را تحت تاثیر قرار نمی.
هر بار که شما از آن استفاده کنید، آن را به یک رشته و دریافت که در آن است.
در مقابل، printf، امیدوارم رفتار خود می کند
تغییر در هر زمان.
در غیر این صورت، آن را کاملا بی فایده تابع چاپ اگر
آن چیزی که می کند همان است.
اگر آن را همیشه چاپ دیوید و یا چیزی
خودسرانه در همه زمان ها است.
بنابراین printf را حس می کند به استدلال است.
GetString واقعا نیاز به بحث است، چرا که من می خواستم
برای دریافت یک رشته از کاربر و کاربر چه کسی
برای تامین پویایی با تایپ کردن در نامه های مختلف
هر بار در صفحه کلید است.
>> پس چه GetString در نهایت؟
فکر می کنم از آن را به عنوان این جعبه کوچک سیاه و سفید.
و این جعبه سیاه طول می کشد بدون ورودی، اما زمانی که شما انفجار در
آن، آن را تف کردن یک رشته که کاربر تایپ شوید.
و این واقعیت است که یک علامت مساوی وجود دارد به این معنی را وجود دارد
چیزی است که تف در سمت راست و ذخیره آن در داخل
آنچه در سمت چپ است.
بنابراین برابر ورود به سیستم در اینجا، آن را در واقع به این معنا نیست
برابری، آن را از لحاظ فنی به معنای انتساب.
نگاهی به ارزش در سمت راست، قرار داده و آن را در
در سمت چپ متغیر است.
به طوری که همه که اتفاق می افتد وجود دارد.
>> در حال حاضر در خط 7، ما خواستار printf است.
بنابراین امیدوارم printf است کمی خسته کننده در حال حاضر است.
بنابراین یک رشته فرمت را چاپ کنید.
چه رشته ای؟
نسخه قابل چاپ کردن، "H-e-l-l-O،٪ s را
\ N ".
کلیه حقوق چه چیزی من می خواهم به پلاگین برای٪ s؟
به معنای واقعی کلمه، هر آنچه در S ذخیره می شود.
بنابراین در این مورد، بررسی سلامت عقل کمی، که چگونه بسیاری از استدلال می کند
printf را؟
خوب، من شنیده ام یکی.
من شنیده ام یکی دوباره.
دو، من شنیده ام دو.
و چگونه در حدود سه؟
خوب، سه؟
عالی.
سه پاسخ ممکن است، فقط یکی از آنها درست است.
بنابراین استدلال دوباره بر رفتار یک تابع است.
در گذشته، printf تنها یک آرگومان.
"سلام جهان" تنها یک آرگومان بود.
با این حال، در حال حاضر، توجه کنید که این کاما از هم است.
این کاما از هم در خارج از نقل قول / نقل قول را تمام کردن، که به معنی است
هی printf، در اینجا می آید یک بحث دوم است.
>> بنابراین کاما از هم در بسیاری از زبان های برنامه نویسی
استدلال های متعدد جداگانه.
پاسخ در اینجا است که قطعا یکی نیست، زیرا
این است که با کاما از هم وجود دارد.
بنابراین حداقل printf ظاهرا در نظر گرفتن دو
استدلال این زمان.
اما فرصت برای فریب سوال در اینجا چیزی است که
در مورد این کاما از هم؟
آیا این حاکی از آن است که در واقع سه بحث وجود دارد؟
این، این و این.
نه، چرا که با کاما از هم در داخل به نقل از، که
بدان معنی است که واقعا فقط یک زیبایی شناسی به زبان انگلیسی است.
تا به چیزی برای انجام با تعداد
بحث در این برنامه است.
بنابراین این کاما از هم است که به نقل از دو در خارج از.
و سپس 0 بازگشت.
حالا فقط مرتب کردن بر اساس این یکی در ایمان
امروز، و تنها است که هنگامی که توابع انجام می شود اجرای می دانم
خط از کد، آنها به طور کلی باید برخی از ارزش بازگشت.
در این مورد، فقط به خاطر اینکه اصلی باید بین المللی بازگشت،
که فقط راه زبان C کار می کند.
>> به دلیل چیزی را اشتباه رفت، احساس می کند مانند برنامه
خوب، من فقط سخت در عوض 0 کد می شوند.
اما در مقابل، و من قصد دارم به نوشتن این شبه کد
در حال حاضر، بسیار شبیه به جوزف هنگامی که ما انجام جوراب
به عنوان مثال در هفته گذشته است.
اگر چیزی را اشتباه رفت - این کد واقعی نمی باشد - رفت
اشتباه است، پس از آن، اجازه دهید بگویم، بازگشت 1.
دیگری 0 بازگشت.
بنابراین این جایی است که ما قصد داریم با این.
این کد C واقعی نیست، فقط شبه است.
اما این است که چگونه شما ممکن است بازگشت
ارزش های مختلف امکان پذیر.
اما در حال حاضر من فقط رفتن به جلو بروید و بازگشت 0.
همه حق است، هر گونه سوال تا کنون در نحو، عملکرد،
و یا می خواهم؟
بله، در پشت.
>> مخاطبان: [نامفهوم]
دیوید مالان: آیا می توانم یک کمی بلندتر صحبت می کنید؟
چرا این برنامه 0 بازگشت، و در؟
مخاطبان: [نامفهوم]
دیوید مالان: اوه، که به خاطر من تنبل، متاسفم.
هیچ خوب دانشگاهی پاسخ، بازگشت 0.
من می توانم نوع از نجات این، با گفتن از لحاظ فنی C، اگر اصلی
صراحت یک مقدار را برگرداند، 0 برگردانده خواهد شد
به صورت خودکار برای شما.
که درست است، من نه تنها پوشش است.
اما، من باید این کار را در این راه.
هیچ غذای آماده جالب از که از اشتباه من است.
آره؟
>> مخاطبان: معمولا هنگامی که شما در خالی تایپ کنید، که شما به معنی
چیزی را بر نمی گرداند.
DAVID مالان: درسته.
اگر در عوض، شما قبل از نام یک تابع را مشخص کنید، برای
به عنوان مثال در اینجا، خالی باشد، آنگاه تابع
هر چیزی را بر نمی گرداند.
و بنابراین من فقط می خواهد، می گویند بازگشت و یا هیچ چیز در همه
و است که می تواند سازگار است.
و ما دوباره به آن.
و فقط FYI، یکی از جلب یادگیری
برنامه نویسی در جهان است که صدها کتاب و
صدها نفر از وب سایت ها در خارج وجود دارد این است که شما همواره
نحو مختلف در کتاب های مختلف را مشاهده کنید
افراد مختلف.
باور می کنیم بهترین خود را در بخش ها و سخنرانی انجام می شود
سازگار است.
اما گاهی اوقات شما به نحو متناقض را ببینید.
بنابراین هر زمان که در شک، فقط بپرسید.
و به طور کلی، خواهیم مراقبت در سخنرانی ها و مقاطع به
تقریبا همیشه آن را در راه حق.
و من می گویم تقریبا همیشه، چرا که در مورد نقطه.
سوال دیگر؟
>> مخاطبان:٪ s را در خارج از دستگاه وجود دارد؟
DAVID مالان:٪ s را در خارج از دستگاه وجود دارد؟
بله.
بنابراین درصد با C. این واقعیت است که ما در حال استفاده از آن در
دستگاه اساسا هیچ چیزی برای انجام با
ویژگی های زبان ما در حال استفاده است.
در واقع، هفته گذشته هنگامی که ما با استفاده از مک من، من نوشت:
کد C بر روی مک من.
من می توانستم٪ s بر روی مک من استفاده می شود، و شما می توانید از آن استفاده کنید
کامپیوتر شما ویندوز اگر کامپایلر شما نصب کنید، مانند
ویژوال استودیو از مایکروسافت.
پس از٪ s.
همه چیز ما در حال انجام در داخل این پنجره به
کار با C. و اساسا هیچ ربطی به با
سیستم عامل مورد نظر است.
در مقابل، سیاه و سفید پنجره ترمینال - وقتی که
من تایپ کردن چیزهایی مانند LS، و RM، و سی دی -
است که با سیستم عامل انجام دهید و
مرور در اطراف.
آره.
مخاطبان: من به معنای کتابخانه، کتابخانه CS50.
دیوید مالان: بسیار خوب، پس اگر منظور شما رشته کلمه کلیدی، که
تنها در کتابخانه CS50 وجود دارد، درست است.
که خود در C وجود ندارد، و در واقع در یک زن و شوهر
هفته دور انداختن کتابخانه CS50 و شروع به
انجام کارها از ابتدا خودمان، پس به صحبت می کنند.
سوال دیگر؟
آره.
>> مخاطبان: [نامفهوم]
دیوید مالان: سوال خوب است.
آیا در مورد دستورات حساس است؟
و تمایز را من در اینجا.
بنابراین دستورات به طور کلی چیزهایی که ما را در ارسال نامه
پایین پنجره، در پنجره ترمینال.
هر چیزی تا اینجا خواهد بود اظهارات یا کد C.
اما در هر دو مورد، پاسخ همان است، بله.
هر دو از این محیط، کد C در بالا و
سیستم عامل و خط فرمان در
پایین، هر دو به حروف حساس است.
بنابراین شما باید GetString سرمایه گذاری با سرمایه G
پایتخت S. شما printf باید در تمام حروف کوچک بنویسید.
شما باید LS در تمام حروف کوچک تایپ کنید.
بنابراین تقریبا در هر وضعیت این ترم، مورد، در
واقع، ماده.
بله.
>> مخاطبان: [نامفهوم]
DAVID مالان: آه، به طوری که درست است، چه می شود اگر ما تا به حال یک فایل
به نام hello.d.
پس از آن معلوم D یک زبان برنامه نویسی است.
بنابراین در برخی از موارد، ما در واقع می تواند یک برنامه در ارسال
آن فایل و آن را در آن مد شده است.
ما می توانیم، و در واقع، پاسخ کوتاه این است، من نمی دانم.
بنابراین ما قصد داریم برای انجام این کار است.
اجازه بدهید من بروم جلو و ایجاد یک فایل جدید.
و چرخش در اینجا، صادقانه به طور کلی، هر گاه هر گونه شک و تردید است
این ترم، و شما باید دستگاه و یا کامپیوتر خود
باز کردن، به جلو بروید و سعی کنید به چیزی.
بنابراین من می خواهم برای ذخیره کردن یک فایل با نام hello.d.
ذخیره سازی این.
و من قصد دارم به اجرا را خوش آمدید وارد کنید.
به نظر می رسید به استنباط که C، بیشتر
از د، در این مورد.
سوالات دیگر.
آره.
>> مخاطبان: [نامفهوم]
دیوید مالان: خوب، می گویند که یک بار دیگر.
مخاطبان: [نامفهوم]
DAVID مالان: چگونه شما را در مورد تشخیص آن و یا
عیب یابی است که؟
بنابراین به احتمال زیاد، زیرا آنها به زبان های مختلف،
به احتمال زیاد شما می توانید به طور کامل دریافت
برنامه های مختلف خروجی.
شما می توانید پیام خطا کاملا متفاوت دریافت کنید.
و همچنین فقط از نظر طراحی، آن را مسلما می باشد
طراحی ضعیف تصمیم به نوشتن دو
زبان با فایل های تقریبا یکسان به نام،
دایرکتوری دقیق، با استفاده از
ابزار اتوماتیک مثل را.
پس من نیز می تواند به عقب هل و می گویند در 15 سال از انجام این کار،
ساخته شده است که هرگز اشتباه است.
می تواند رخ دهد.
اما فقط مختلفی وجود دارد، من فکر می کنم،
دفاع و تدارکات را تحت پوشش در محل.
علاوه بر پیام های خطا که می امدن، که
در نهایت آنچه مسئله این است که فاش کند.
اما در مورد گوشه ای امکان پذیر است.
>> همه حق است، بنابراین معرفی فقط یک زن و شوهر از دیگر به شما اجازه می دهد تا
ویژگی های اینجا در حال حاضر است، بنابراین ما می توانیم شروع به ساخت تا به بیشتر
و بیشتر برنامه های پیچیده است.
بنابراین اول از همه، ریاضی.
بنابراین نمونه ریاضی فقط نوع آسان در هفته اول.
این است که می گویند که همه ی برنامه نویسی است که در مورد
ریاضیات.
بدیهی است، شناخت ویژگی های مختلف از
ریاضی، جبر به طور خاص، است
کاملا مربوطه اینجا کلیک کنید.
در سطح بالاتر کلاس CS، جبر خطی،
حساب دیفرانسیل و انتگرال، و مانند آن است.
اما درک بیشتر از آنچه که ما از این ترم انجام دهد را کاهش می دهد
به ریاضی، و قطعا نه به حساب، فی نفسه، اما واقعا
فقط به منطق و به تفکر دقیق است.
و بنابراین این پیوندی که علم کامپیوتر به مدت طولانی به حال،
به خصوص در سطح دبیرستان، ریاضی،
کمی گمراه کننده است.
از آنجا که بسیاری از برنامه هایی که خواهیم نوشت، واقعا،
مرتب کردن بر اساس سطح بالاتر و تمرکز بر روی حل مسائل است که،
مطمئن شوید، ممکن است علاوه بر این، تفریق، و مختلف استفاده کنید
فرمولهای ریاضی و یا مانند آن،
اما در پایان روز، آن را در فکر و نه
فقط اجرای آنچه که شما ممکن است مانند TI انجام می شود
ماشین حساب در دبیرستان.
>> پس با که گفت، اجازه بدهید در حال حاضر انجام کاری با این
اپراتورهای ریاضی که وجود دارد به طوری که ما می توانیم سفر
بیش از برخی از جنبه های اساسی برنامه نویسی، و یا در
این مورد C. بنابراین، وجود دارد به عنوان کتابخانه CS50 پیشنهاد،
و امروز ما فقط GetString با استفاده از - و در یک لحظه
شاید یکی از عملکرد های دیگر -
اما انواع مختلف داده ها در یک کامپیوتر وجود دارد.
در پایان روز، رایانه فقط می دانم 0s و و 1S است.
اما به یاد داشته باشید که در هفته گذشته ما در مورد سیستم دودویی صحبت کردیم
در نمایندگی اعداد، مانند شماره 0 و 1 و 2،
تمام راه تا 8، همانطور که در ویدیو مقابله.
و پس از آن ما می توانید تعداد دفعات مشاهده بسیار بالاتر ما
در مرحله اینجا.
اما اگر شما می خواهید برای نشان دادن نه تنها اعداد بلکه حروف،
ما انسان ها، باید آمد تا با برخی خودسرانه
همایش ها، که به موجب آن در صورتی که در پایان روز از تمام کامپیوتر من
است تا به توانایی برای بیان 0s و 1S، و ما بهتر است
شروع به الگوهای استاندارد از 0s و 1S که نشان دهنده
مختلف همه چیز.
الگوی از 0s و 1S که نشان دهنده نامه.
الگوها و از 0s و 1S که نشان دهنده Z نامه.
الگوهای از 0s و 1S که نشانگر آبی رنگ و یا
قرمز، و یا مانند.
ما نیاز به استفاده از این 0s و 1S به خودمان بیان
زمینه های مختلف در راه های مختلفی هستند که
لزوما عددی.
>> بنابراین در شرایط نمایندگی، C انواع داده های مختلف،
و ما یکی از این دیده ام تا کنون.
ما شاهد هوشمند، و توجه کنید که چه چیزی بر روی صفحه نمایش
در حال حاضر رشته است.
رشته در واقع، نه، در C. وجود داشته باشد باز هم، آن را به یک
ساده سازی برای اولین بار ما در حال ارائه
چند هفته است.
کاراکتر، شخصیت فردی است.
شناور یک عدد حقیقی است، با نقطه اعشار و اعداد به
در سمت چپ و در سمت راست آن است.
دو، برای کسانی که با پس زمینه بازگشت قبلی است؟
بنابراین دو برابر دو برابر چیزی است.
می افزاید: دو برابر دقت بسیار است.
پس به چه معنی است؟
بنابراین در هر یک از این موارد، جهان مرتب کردن بر اساس استاندارد
که چگونه بسیاری از بیت ها استفاده می شود به نمایندگی
هر یک از این چیزها.
بنابراین اگر شما تماشا ویدیو ASCII مقابله و در حال حاضر برای بخش
از pset 0، و یا بعد از این هفته به شما خواهد شد، شما احتمالا می دانم
که ASCII -
بازنمودهای شخصیت -
استفاده از چگونه بسیاری از بیت؟
و شما حتی ممکن است از نسخه ی نمایشی ما به یاد داشته باشید هفته گذشته چگونه
بسیاری از مردم به روی صحنه بودند.
بنابراین، معمولا 7 یا 8.
بنابراین به طور کلی 8، و چیزی به نام به عنوان توسعه یافته وجود دارد
ASCII است که با استفاده از هر 8 بیت، به جای 7.
اما به طور کلی، ما در قدرت 2 صحبت می کنید، بنابراین در این مورد، 8.
بنابراین یک کاراکتر در یک زبان برنامه نویسی است که معمولا 8 بیت است.
بنابراین بین المللی است که به طور کلی 32 بیت.
شناور است که به طور کلی 32 بیت.
دو برابر شده است به طور کلی 64 بیت است.
و چه معنا است؟
این بدان معنی است که شما می توانید اعداد بزرگتر نمایندگی، و یا در مورد
از اعداد حقیقی، شما می توانید تعداد بسیار بیشتری پس از
محل دهدهی.
خیلی بیشتر دقت، در آن صورت است.
در حال حاضر طولانی مدت است که متاسفانه به نام.
بنابراین بین المللی است که 32 بیت وجود دارد.
زمانی است که، نه، 32 بیت وجود دارد.
و طولانی مدت است که 64 بیت است.
با این حال برخی از کسانی که چهار چوب حساس هستند؛ آن بستگی دارد
چه نوع از کامپیوتر شما داشته باشد.
بنابراین به طور کلی، ما در مشق شب یا در یک مسابقه را مشخص
در واقع مهم است.
اما نکته این است که همه از این های مختلف وجود دارد
بازنمودهای اینجا کلیک کنید.
>> پس در واقع به یک برنامه اجازه بدهید.
به جای ارسال این یکی از ابتدا، اجازه بدهید من بروم پیش
و باز کردن از کد منبع امروز - همه از آن
آنلاین - اگر شما به سرهم بندی کردن در اطراف آنلاین می خواهید، یا بازگشت
چهارشنبه با دستگاه بر روی کامپیوتر شما، دستورالعمل
که برای آن در صفحه اصلی درس را لینک کنید.
در اینجا یک برنامه فوق العاده ساده می باشد.
اما یک چیزی کمی در بالا کردم که
ما قبل ندارد.
زیادی خطوط آبی از متن است.
پس این خطوط آبی نشان دهنده نظرات.
پس از آن در یک برنامه بسیار مفید باشد قادر به نوشتن
برخی از نظرات به خودتان، و یا به همکاران و یا دوستان، یا
همراهان که مرتب سازی بر اساس آموزش، از توصیف آنچه که در
این فایل، اما هیچ چیزی برای انجام با کد C خود.
هیچ چیزی برای انجام با این برنامه عملکرد، آن را فقط
زیبایی شناسی.
بنابراین راه را به شما انجام این کار در C شما به طور کلی شروع
نظرات / *، و شما پایان دادن به نظرات و پیشنهادات خود را با
* /.
و اگر شما واقعا مقعد و دوست را به منظور جلب نوع از تصاویر،
پس از آن شما می خواهم زیادی از ستاره ها قرار داده است، از شما می خواهم را
جعبه کمی شبیه به این.
اما هیچ یک از این مسائل است.
تنها چیزی که اهمیت بسیار است
و آخرین
این همان چیزی است که به نام چند خط یک نظر.
و آن را فقط به کنوانسیون انسان به اغلب ستاره ها و جعبه
چیزهایی شبیه به این اگر شما مقدار زیادی از زمان آزاد است.
>> پس از شما در برخی از نظرات نوشته شده است، به طور کلی، می آیند
جرات واقعی از این برنامه است.
در اینجا ما آشنا # شامل .
و فقط سریع، این لازم است یا لازم نیست؟
مخاطبان: ضروری است.
دیوید مالان: پس از آن را در واقع لازم نیست.
پس چرا، هر چند، آن است که لازم نیست؟
بنابراین هیچ printf وجود دارد.
در واقع.
همه ما در حال انجام در این برنامه ریاضیات است.
بنابراین من در واقع می توانید حذف کنید.
بنابراین شما همیشه باید شامل هر چیزی در
بالا از برنامه است.
>> بنابراین ساده این بیت به شما اجازه می دهد تا.
و در حال حاضر آنچه که این برنامه انجام می دهد توجه کنید.
نه بسیار مورد علاقه است.
نوع int x = 1.
خوب، این چیزی است که انجام شده است؟
خوب، فکر می کنم برگشت به مدل ذهنی از قبل است.
در سمت چپ از این بیان می کند چه؟
ایجاد فضا برای یک عدد صحیح است.
پس چگونه فضای زیادی است؟
خب، ما اتفاق می افتد می دانم هم اکنون که 32 بیت است.
پیش از این، یک رشته فنی 32 بیت است، اما بیشتر
که در آینده.
اما بین المللی 32 بیت است.
بنابراین این بیان در سمت چپ در اینجا، اعضای هیات ایکس فقط می گوید: هی
سیستم عامل، من 32 بیت از RAM -
در غیر این صورت به عنوان 4 بایت از RAM شناخته می شود -
به طوری که من می تواند یک عدد صحیح است که در فضا قرار داده است.
چه عدد صحیح شما می خواهید برای قرار دادن؟
خوب، فقط شماره 1.
y هوشمند می شود 2، دقیقا همان چیزی که حتی اگر
شماره بزرگتر است، از لحاظ قدر آن.
شماره خود را هنوز هم فقط 32 بیت است.
این فقط الگوی بیت متفاوت است
نشان دادن 1 در مقابل 2.
نوع int Z در حال حاضر می گوید: یکی دیگر از بیت 32 به من بدهد، آن را Z، قرار داده و
جمع 1 و 2 در آن وجود دارد.
به طوری که در حال حاضر Z احتمالا ذخیره سازی ارزش 3،
و سپس 0 بازگشت.
>> در حال حاضر این برنامه، آن را هر چیزی مورد علاقه؟
بنابراین آن را در واقع به هر چیزی جالب را انجام ندهید، در هر
حس، چرا که چرا؟ این کار برخی از ریاضی است.
اما این پاسخ بازگشت نیست، درست است.
این بازگشت به 0.
پاسخ چاپ نیست.
بنابراین این برنامه این است که اساسا بی ارزش، آن را به عنوان
می ایستد در حال حاضر.
انجام برخی از کار است.
این رفتن به از چند ثانیه یا میکرو ثانیه، به
اجرا شود، اما در واقع نه انجام هر کاری
مفید برای انسان است.
>> پس اجازه دهید در واقع در حال حاضر باز math2، جایی که در حال حاضر من در واقع
چاپ نتیجه.
پس این هم می توان از نمونه های قبلی ما استنباط شده است.
اگر من می خواهم به انجام برخی از ریاضی ساده، نوع int x = 1، y
= 2. Z 1 به علاوه 2 در حال حاضر.
این چیست به چاپ بدیهی است؟
تنها 3.
بنابراین سلامت عقل را سریع چک کنید.
اجازه بدهید من به این شاخه حرکت می کند.
پس سی دی source1m.
اجازه بدهید من به جلو بروید و تایپ را math2.
بدون پیغام خطا بیرون آمد، به طوری که من اجرا کنیم -
a.out-math2 اجرا من. را وارد کنید.
و در واقع، آن را چاپ 3.
نگاهی به یک نوع از این به شما اجازه می دهد تا.
در math3.c، ما در حال حاضر این مثال را در اینجا داشته باشد.
>> بنابراین نوع این یکی از جالب.
بنابراین در این یکی اینجا، جواب این است: رفتن به 1، با 10 تقسیم،
و متوجه من اعلام کرد که آن را به عنوان یک شناور.
چرا من می خواهم آن شناور می شود؟
خب، از آن کسر شده است.
این رفتن به یک عدد حقیقی است.
پس از آن برای رفتن به 0.1، امیدوارم - 10٪، در این مورد است.
و چه چیزی من می خواهم برای چاپ کردن؟
خب، این پاسخ.
خوب، اجازه دهید کسی را دست انداختن این از هم جدا.
بنابراین در سمت چپ، اعلام
شناور، با آن پاسخ خواهد داد.
در سمت راست، 1، با 10 تقسیم شده و قرار داده است که
پاسخ دادن داخل متغیر است.
در حال حاضر، این خط به نظر می رسد کمی بیشتر مرموز است.
اما متوجه برخی از ویژگی های آشنا. درصد به این معنی است در اینجا می آید
حفره یا سوراخ.
F به معنی در اینجا یک مقدار ممیز شناور است، فقط واقعی
تعداد، چیزی با نقطه اعشار.
0.2 یعنی چه؟
هر کس از تجربه قبلی می دانیم؟
دو مکان اعشاری.
بنابراین ما از این دیده نمی شود قبل از، اما این فقط یک راه
ورزش و کمی کنترل بیشتری بر printf و
گفت به من بعد از نقطه اعشار 30 امتیاز،
به جای آن من را فقط 2.
>> و پس از آن به جلو و اجرا کنیم.
بنابراین ریاضی 3، و در حال حاضر اجازه ریاضی 3 اجرا، وارد کنید.
و این درست نیست.
ما به نظر می رسد که با اولین اشکال واقعی مواجه است.
خب، شاید من فقط به دنبال به اندازه کافی نزدیک است.
پس به من اجازه رفتن به اینجا، و اجازه دهید من را 20 دهدهی
مکان نقطه وجود دارد.
و اجازه دهید این کامپایل من، math3، اجرا شود.
کاملا مطمئنم 1 و تقسیم 10 0 است نیست.
پس چه اتفاقی افتاده؟
خوب خوب، پس در واقع آن را ندارد نه به این کار را انجام دهند.
این یک فکر خوب است.
این است که واقعا فقط یک تصادف
که ما در حال انجام این کار است.
اما فقط برای اثبات این است که آن را نمی، من
بازگشت چیزی تصادفی است.
این کار را در خانه انجام ندهید، زیرا این فقط اشتباه است.
اما math3، اجازه دهید من آن را اجرا کنید.
بنابراین هیچ چیزی برای انجام با آنچه من بازگشت، تنها به انجام
آنچه من چاپ می کند.
اما من آن را شنیده ام را در اینجا.
چیست؟
مخاطبان: بنابراین ما نیاز به نوشتن اعداد در
بخش -
>> دیوید مالان: خوب خوب.
بنابراین ما نیاز به نوشتن تعداد شرکت کننده در
تقسیم بندی در اینجا به عنوان نقطه شناور خود ارزش قائل است.
بنابراین مشکل در اینجا است که به عنوان قبل از: C، به عنوان با تعداد زیادی از
زبان، دارای انواع داده های مختلف است.
و آن دسته از انواع داده ها، به عنوان مثال، این در اینجا.
و انواع داده ها در اینجا، وقتی که من نوع 1 و پس از آن من
نوع 10، احتمالا چه نوع داده؟
پس از آن احتمالا بین المللی، درست است؟
این قطعا یک شناور نیست، زیرا هیچ اعشاری وجود دارد
نقطه یا هر چیزی شبیه به آن است.
پس در واقع، من بین المللی تقسیم بین المللی است.
>> بنابراین نکته جالب در مورد ریاضی و کامپیوتر است که
اگر شما در حال انجام تقسیم بندی با استفاده از اعداد صحیح -
(1) تقسیم 10، بله، 0.1 می باشد.
با این حال، هنگامی که شما در حال تقسیم یک عدد صحیح بر یک عدد صحیح،
پاسخ این سوال نیز می تواند یک عدد صحیح فقط به خاطر اینکه، در حال حاضر.
و چه مفهوم است؟
خب، اگر پاسخ 1 با 10 تقسیم شده برابر با 0.1، آنچه
کامپیوتر برای انجام این کار این است که من هیچ نظری ندارم که چگونه به
نمایندگی 0.1، چرا که یک مقدار ممیز شناور،
عدد صحیح، آن را رفتن به ریز ریز کردن همه چیز را پس از
نقطه اعشار و فقط شما 0 در آغاز نشان می دهد.
و این واقعیت است که آن را به چاپ به عنوان یک نقطه شناور
ارزش، این فقط یک چیز زیبایی است.
دلیلش این است که من مجبور به کامپیوتر برای چاپ این عنوان
شناور ارزش نقطه.
و در واقع من آن را به عنوان یک شناور اعلام کرد، اما ریاضی
اتفاق می افتد در اینجا.
>> پس اجازه دهید من در واقع حل این مشکل یک راه بسیار آسان است.
چرا من نه تنها 10.0 و 1.0، اگر چه
از لحاظ فنی من می توانم تنها با انجام یکی از آن دور است.
حالا من به جلو و math3.
اجازه بدهید من به جلو و در حال حاضر اجرا math3 را وارد کنید.
و در حال حاضر، اوه، پسر.
در حال حاضر ما یک مشکل جدید در دسترس نباشد.
بنابراین بهتر است، درست است، ما نزدیک به 0.1، اما آنچه واضح است
اشتباه است که اینجا هستید؟
مگر این که ما شده ایم دروغ گفتن به شما برای سالها، درست است؟
1 با 10 تقسیم شده است که در واقع کاملا 0.1، پس چه
واقعا در اینجا؟
شما می توانید نوع عقل از طریق این منطقی است.
اگر یک کامپیوتر دارای مقدار محدودی RAM برای شروع
، و در واقع یک کامپیوتر تنها با استفاده از 32 بیت برای
شناور مقدار نقطه، آن می ایستد که با دلیل
تعداد محدودی از بیت، 32 در این مورد، بله، شما می توانید
نمایندگی بسیاری از مسائل است.
در واقع این است که چهار میلیارد مقادیر مختلف می تواند
نشان داده با 32 بیت، 2 تا از 32 است، اما هنوز هم محدود است.
بنابراین مشکل این است که تعداد بی نهایت واقعی وجود دارد
اعداد، درست است.
اگر شما از من یک عدد حقیقی را به من بدهید، من همیشه می تواند به شما پیدا کردن یک
کمی بزرگتر، کمی کمتر، تنها با افزایش سرعت
اعداد است که بعد از نقطه اعشار هستند.
بنابراین اگر شما یک تعداد نامحدود از بیت ها را نداشته باشند، شما
احتمالا نمی تواند نشان دهنده بی نهایت
تعداد اعداد حقیقی است.
>> بنابراین این عدم دقت ذاتی در کامپیوتر وجود دارد، و
این می شود بیش از همه از زمان حتی در ساده ترین افتاد
برنامه های شبیه به این.
اما همچنین در برخی از مشکلات بسیار واقعی جهان و.
در واقع، اجازه دهید یک لحظه به نگاه فقط در
چیزی است که در واقع در واقعیت اتفاق افتاده است.
ما فقط چند دقیقه، تماشا و سپس
ما می خواهیم به صورت آنلاین لینک ارسال کنید.
اما این عهد تا فقط آنچه می تواند به اشتباه، کاملا
راستش، در یک راه بسیار غم انگیز است وقتی که این کارها نیست
قدردانی و یا فقط ما انسانها را می سازند Hard Work کار سخت Sincerity صمیمیت اشتباهات زمانی که آن را می آید
این نوع از جزئیات پیاده سازی از کامپیوترهای مدرن است.
>> [بازی VIDEO]
ما در حال حاضر به بلایای مهندسی در شگفتی مدرن بازگشت.
کامپیوترها.
ما همه را به پذیرفتن مشکلات اغلب نا امید کننده می آیند
که با آنها برود.
حشرات، ویروس ها، و مشکلات نرم افزار قیمت های کوچک به
برای راحتی پرداخت.
اما در ارتش با سرعت بالا فن آوری و بالا و فضای
برنامه های کاربردی برنامه، کوچکترین مشکل می تواند
بزرگ به فاجعه است.
در روز 4 ژوئن سال 1996، دانشمندان آماده برای راه اندازی بدون سرنشین
موشک Ariane 5 موشک.
حمل ماهواره های علمی طراحی شده تا
ایجاد دقیقا چگونه میدان مغناطیسی زمین
تعامل با بادهای خورشیدی است.
این موشک برای آژانس فضایی اروپا و ساخته شد
از امکانات خود را در سواحل گویان فرانسه برداشته شد.
>> درباره 37 ثانیه به پرواز، که برای اولین بار
متوجه چیزی شد اشتباه است، که نازل
swiveling در راه آنها واقعا باید.
حدود 40 ثانیه به پرواز، به وضوح خودرو
در مشکل بود، و زمانی که آنها تصمیم به
نابود کردن آن است.
محدوده افسر ایمنی با جرات فوق العاده فشرده
را فشار دهید، منفجر موشک قبل از آن می تواند تبدیل به یک
خطر امنیت عمومی است.
>> این سفر قبل از ازدواج از موشک Ariane 5 بود، و آن
تخریب به دلیل نقص جاسازی شده در زمان
نرم افزار موشک.
>> مشکل در آریان بود که یک شماره است که وجود دارد
نیاز به 64 بیت برای بیان و آنها می خواستند آن را تبدیل
به 16 بیتی.
آنها تصور می کردند که این تعداد هرگز
رفتن به بسیار بزرگ،
است که بسیاری از کسانی که رقم در عدد 64 بیتی 0s و.
آنها در اشتباه بودند.
>> ناتوانی برنامه یک نرم افزار برای قبول
نوع از تعداد تولید شده توسط دیگر در ریشه
شکست.
توسعه نرم افزار بسیار پر هزینه تبدیل شده بود
فن آوری های جدید است.
آریان 4 موشک بسیار موفق بوده است.
خیلی از نرم افزار ایجاد شده برای آن نیز مورد استفاده قرار گرفت
موشک Ariane 5.
>> مشکل اساسی این بود که موشک Ariane 5 سریعتر،
شتاب سریعتر شده است.
و نرم افزار است که نه به حال به خود اختصاص داده است.
>> نابودی موشک های مالی بزرگی بود
فاجعه، همه به دلیل یک خطای نرم افزاری دقیقه است.
اما این اولین بار بود که مشکلات تبدیل داده ها
گرفتار تکنولوژی راکت مدرن است.
>> دیوید مالان: ما آن را در ترک کنید.
اما این عهد را به چقدر قابل اجرا حتی برخی از
این پایین ترین سطح است که ما به آغاز شده است
کشف امروز هستند.
بنابراین حتی شما یک کمی شاید از سوی برخی از پریشان
به نحو و arcaneness اینجا، متوجه است که بیش از
مدت ما فقط قابل اجرا این است که برای متمرکز می شود
جهان به مراتب فراتر CS.
ما شما را در روز چهارشنبه را ببینید.