>> DAVID МАЛАН: Это CS50, и эта является началом одной недели.
И то, что мы думали, что мы сделать, это отступить занавес устройство, которое многие
из вас, наверное прошла мимо сейчас в течение многих лет, но, возможно, никогда полностью не
Известно, что это такое.
Таким образом, это устройство будет, вероятно, искать знакомо большинству из вас в настоящее время.
>> [ВОСПРОИЗВЕДЕНИЕ ВИДЕО]
>> Триумф-математических и механическое умение этой новой
автоматический вычислитель Гарвардском университете.
Сложные проблемы математики положить через машину в закодированном виде на
Лента точно решить в минуту доля времени, необходимого для
человеческих расчетов.
>> Предназначен для ускорения всех форм математические и научные исследования,
гигантский механический мозг будет работать на Соединенные Штаты
Флот до конца войны.
>> [КОНЕЦ ВИДЕОВОСПРОИЗВЕДЕНИЕ]
>> DAVID МАЛАН: Так вот что вы видите в научный центр, который является, где
эта машина в настоящее время находится.
На самом деле вы видите только его часть.
Только часть в настоящее время на дисплее, и это устройство под названием
Mark I, и это было по существу действительно огромный калькулятор.
Он сменил Mark II, и это от Mark II, что мы на самом деле
получить немного лексикон.
>> Это первый зарегистрированный случай то, что вы собираетесь стать все
слишком хорошо знакомы с более чем семестра -
а именно ошибка.
Так оно и оказалось в какой-то момент Марк II устройство не функционирует
должным образом, и при ближайшем рассмотрении действительно существует ошибка - моли -
что моли -
внутри.
И с тех пор, мы обозначили ошибки в программах, как ошибки.
Так об этом в будущем.
>> Говоря о видео, а также, если вы еще не сделали, знаю, что это CS50
Очевидно, снят.
Лекции обычно идут вверх сразу после класса в своего рода пре-релиз
неотредактированными формате, а затем через день или два спустя, мы мириться с более высоким разрешением
и более высокое качество версии.
Вы можете вспомнить, Ванесса, которая была судьба играет с Google стекла,
которые я не забыл взимать этот раз.
Так что если вы хотите, чтобы придумать после занятий и играть, они должны работать сегодня.
И если вы хотите, чтобы видеть то, что Ванесса видел на днях, что вы увидите
здесь - дайте мне увеличить громкость здесь, на моем ноутбуке.
>> [ВОСПРОИЗВЕДЕНИЕ ВИДЕО]
>> -Итак, позвольте мне очередь это произошло.
Хорошо.
Так прикоснуться к этому.
Хорошо.
ОК, Стекло.
Запись видео.
>> Хорошо.
Ванесса?
>> [КОНЕЦ ВИДЕОВОСПРОИЗВЕДЕНИЕ]
>> DAVID МАЛАН: Ладно, так что причина , что она не работает для большинства из вас в
в конце класса, потому что я приступил записать час, что
кадры указывая на себя после того, как Я поставил стаканы.
Поэтому сегодня, я оставлю их, но слава Вам за то, что Ванесса такой
хороший спорт.
>> Между тем, пара объявления прежде, чем мы продвигаться вперед сегодня.
Так что, CS50 имеет традицию делать что в наших силах, чтобы попытаться сделать очень
большого класса чувствовать себя меньшим.
И в этом направлении, почти каждую пятницу, мы собираемся в ресторане в
площади, огонь и лед, с 30 или 40 из ваших одноклассников, себя, некоторые из
преподавательского состава, и мы просто есть очень неформальный обед.
Мы часто приглашаем друзей из промышленности, Выпускники класса, выпускники
колледжа, на самом деле просто поболтать каждого друга, поговорить о жизни после
колледж, жизнь в колледже, и тому подобное.
Так что если вы хотели бы принять участие в этом Первый такой обед в эту пятницу в
1:15 вечера, с головы до, что URL в некоторой точке.
>> Количество мест ограничено, поэтому мы будем делать первый пришел первый обслужен.
Но мы будем делать это снова на постоянной основе, так что не волнуйтесь, если вы не
превратить его в этой первой партии.
>> Теперь, с точки зрения ресурсов, предоставляемых curricularly ходом,
есть целая куча, и если у вас не подъехал сайте курса
Уже, в частности, при лекции, вы обнаружите, что все,
мы сделали на прошлой неделе есть, как в видео-и своего рода
электронной форме.
Но помимо видео, вы найдете что в настоящее время полный текст
стенограммы, например, каждой лекции.
>> Так что, если мы на самом деле вернуться к этому экрану Здесь с Ванессой, и перейдите
к нижнему углу экрана, вы обнаружите, что на самом деле, а не для
Лекция в пятницу, но если мы вернемся к Среды, так как в этом режиме занимает
несколько дней, вы увидите, что вы можете на самом деле тянут вверх, к лучшему или к
Хуже того, каждое слово, что я или добровольцем на сцене сказал.
И не только в этом.
Вы действительно можете искать его, вы можете нажмите на любой из этих предложений, прыгать
на тот момент в видео, все к и в конце делая материал все
более пригодные для плавания.
>> Но если вы не хотите следовать ему в таких деталях, вы найдете, для
Например, это небольшое меню здесь 1.5x скорость, скорость 2x, или я F Я уже
говорите слишком быстро для вас, 0.75x скорости.
Таким образом реализовать все это доступны там для вас.
>> Но помимо этого, для проведения лекций, понимают, что мы также сделать эти ресурсы
также доступны.
Слайды, примеры кода, все, что я делать на сцене или перед классом,
мы разместим там, так что вы можете играть вдоль дома или в Сандерс.
Но то, что мы также думали, что мы сделаем это год впервые также
предоставить вам пошаговые руководства из этих примеров.
Все чаще, как я уже отражается на Значение лекций CS50, я уже начал
на вопрос, насколько он полезен для вы, ребята, сидеть там, для меня стоять
здесь, и для меня говорить на вас, особенно в качестве материала,
примеры, становятся все более сложными.
Поскольку неизменно, после некоторого числа минут, кто-то из зоны, и
то вы пропускаете некоторые Ключевым моментом в некоторых Например, после чего вы, по сути
закончилось в течение оставшейся части класса который не наилучшим образом использовать
свое время, или, на самом деле, наш коллективно как класс.
>> И поэтому то, что мы думали, что мы пытаемся сделать, особенно для некоторых из более
сложные примеры, что я не мог бы сделать справедливость в классе, что мы могли бы не
есть время для в классе, или вы можете только зоны во время, что мы будем производить
серии пошаговых руководств этих примеры, так что если вы идете в, для
Например, видео в прошлую пятницу странице здесь в примерах, вы увидите, что
на пятницу, есть теперь эта ссылки на пошаговые руководства.
И формат этих будет меняться с течением времени.
На данный момент, мы используем простой YouTube плейлист.
>> Но то, что я сделал с нашей съемочной группы впоследствии было пройти через каждую
и каждый из этих примеров опять же, надеюсь, указывая в гораздо большей
ясности именно то, что еду на дом могли быть или должно быть от каждого из них.
Таким образом, вы найдете, например, за последние неделю, каждый из нуля примеры
мы прошли сделано линейно в этой моде.
Так что не стесняйтесь заниматься или нет участвовать в этом материале.
Действительно тема этого конкретного курса то, что есть, вероятно, более
в виде ресурсов, чем вы могли бы поглощать более
ходе семестра.
>> Но это преднамеренной.
Это предназначается, чтобы быть так, что вы, как отдельные студенты могут самостоятельно выбрать
на основе вашего стиля обучения.
Так что если лекции работать на вас, прекрасно.
Если части работают на вас, прекрасно.
Если работать на пошаговые руководства Вам лучше, отлично.
Это действительно будет до вас, чтобы выбрать какие ресурсы работать лучше для вас.
>> Наконец, благодаря выпускнику Конечно, мы также предоставляем канонической
набор писец нот.
Поэтому вместо того, вы, ребята, руководители вниз в лекциях строчить вниз
вещи, которые приходят в класс, мы, персонала, предоставит вам то, что мы
чувствую, канонический набор примечаний к освободить вас этого отвлечения, так что
Если вы здесь, и занимался, вы действительно занимаются с тем, что происходит,
со своими одноклассниками делают на этапе, с тем, что на экране,
и не просто записывать дословно то, что произошло, что было сказано.
Так что реализовать все эти ресурсы которые доступны для вас.
>> Секционирование, в ответ на часто задаваемые вопросы, начнется в эту среду.
Мы по сути, не ждать, пока после того как большинство других классов, сделаны так, что мы можем
минимизировать количество изменений что мы должны сделать.
Но придумывать эти выходные, начиная Воскресенье, будет один раз экземпляр
что мы называем супер разделах.
Они будут сняты для тех, кто не может участие, и, по сути,
руководители курса будет идти нас через некоторые из части С курса
к концу проблема один набор, который будет наша первая C основана
Проблема набора.
И это будет только дополнительные разделы в ожидании того, что будет
стать повторяющихся разделов привело на 50 плюс курса
обучения стипендиатов еженедельно.
По воскресеньям или понедельникам или вторникам, мы есть 90 минуты разделов в очень
традиционном смысле, который будет возможности для руки, и больше
близкий обзор Материал курса.
>> Без дальнейших церемоний, позвольте мне представить Конечно головами, которые являются
за кулисами со мной, делает все произойдет.
Если тех, кто здесь сегодня может присоединиться ко мне, Роб и Лорен и Иосиф и Лукас, все
из которых были с Конечно в течение некоторого времени.
RJ уже третья подобная членом нашей команды.
Он не мог быть здесь сегодня, но он попросил меня показать его фото.
Я не уверен, что хочет этого , но вот он.
>> И позвольте мне просто позволить команде говорят привет и представиться, так что
Вы узнаете их, а также ваши собственных товарищей преподавания этого термина.
>> LAUREN CARVALHO: Привет.
Меня зовут Лорен Карвалью.
Я житель репетитора Левереттом в доме.
Я также очень рад быть головы для CS50 ТВ в этом году.
>> CS50 является очень сложным, а класс в виде очень большого класса, так что если
есть какие-нибудь проблемы, если вы чувствуете, как вы отстали, не стесняйтесь
связаться с любым из нас в heads@cs50.het, или ко мне, если бы ты
нравится играть с моими золотыми ретривер щенка.
Вот Лукас.
>> LUCAS FREITAS: Привет, ребята.
Меня зовут Лукас Фрейтас.
Я младший [неразборчиво]
информатике и лингвистике.
На самом деле я из Бразилии, и я также понимают исследований Восточной Азии.
Так что если у вас есть какие-либо вопросы о компьютерных наук или языка или
что угодно, только дайте мне знать.
Или CS50, особенно.
>> ИОСИФ ОНГ: Привет.
Я Иосифа.
Я старший Обучение компьютеру науки в Elliott House.
Итак, давайте посмотрим.
Вы увидите меня вокруг проведения одного из этих огромных камер.
Я резидент фотограф персонала на 50, а также, и студенты часто
Иногда принять меня за азиатских туристов.
>> Так что если вы видите меня с камерой, не убегают.
Просто улыбнитесь и не стесняйся.
И я надеюсь, вам понравится 50.
Я это очень понравилось, когда я взял его, и именно поэтому я для TFing
эти три года.
>> ROB BOWDEN: Привет.
Я Роб.
Это мой четвертый семестр с CS50.
Я только что закончил в мае.
Я был в Kirkland.
Я рад за этот семестр, и я надеюсь, что вы тоже.
>> DAVID МАЛАН: Спасибо в этом году руководители и RJ, а также.
>> Так несколько последние ноты на ресурсы.
Один из них, множество Р 0 уже запущен.
Это одно существует только в стандартном издание, которое предназначено для
полностью класса.
Начиная с множества Р 1, будет Хакер изданиях большинство наборов проблемы,
которые, опять же, будет охватывать материал с немного более сложной задачей, в то время
еще касается на некоторых по той же тематике.
У взгляните на сайте курса для этой спецификации для набора 0 р.
>> Часы тоже начнется на этой неделе, Сегодня вечером, завтра, в среду,
и четверг в различных столовой залов на территории кампуса.
Выезд cs50.net/ohs для офиса часов для курса, и понимаю, что это
будет очень случайные возможности, конечно, в начале
семестра, приехать с вашим ноутбук во время мозгового перерыва.
Принеси друзей и болтать курса ТФ и ЦС с любым
Вопросы, которые вы могли бы иметь.
>> И я не могу подчеркнуть достаточно, даже для нуля и проблема набора 0, то
действительно нет немой вопрос.
Там не слишком неудобным студентом задавать вопросы.
Пожалуйста, не стесняйтесь, чтобы воспользоваться этого ресурса.
Он будет там recurringly В течение семестра
как будет CS50 обсуждать.
Это интерактивное обсуждение курса форумах по этому адресу там.
>> То, что мы также сделаем это во время лекций Также следить за этим, благодаря
преподавание курса команды.
И поэтому, если у вас есть вопрос во время лекции, потому что я сказал что-то
плохо или совсем нет, все средства, спросите , что в реальном времени, если у вас есть
ноутбука или телефона на веб-сайте, и Мы сделаем все возможное, практически в режиме реального времени, чтобы
ответить на это.
>> Есть ли какие-либо вопросы о CS 50?
Тогда последние ноты мое.
Этот вопрос из ненасыщенного сб.
В чем завершить свое исследование карты, если Вы еще не сделали, понимаешь, что
Всеобъемлющая видение СБ ненасыщенного, доступны для всех студентов, на самом деле
, чтобы помочь снять остроту курса как это, так сказать, так что, если Вы
окажетесь поздно ночью, 2 утра, 3 утра, действительно биться головой против
стене, где вы знаете, что 99% пути к завершению, но вы
есть так много других вещей, чтобы сделать, Я думаю, что лучше использовать, часто, из
Время студентов является действительно перейти к эти другие вещи, чтобы можно было
оптимизировать свое время все вокруг.
И СБ ненасыщенного является одним механизмом, через который вы можете быть спокойны в том,
что 99% пути есть еще чертовски хорошо.
>> Аналогичным образом, тоже, если вы пришли в Конечно без предварительного фона или
далеко не так, как вы фона считаете, что ваши одноклассники могли иметь, истинная
или ложным, понимаю, что это возможность получить ваши руки грязные
с курсом, положил пальцы в вода, так сказать, так же, как я сам
сделал лет назад с годен / не годен.
Как я уже говорил на прошлой неделе, было это, конечно, как и другие, не были доступны
прошел / не прошел в то время, я бы, наверное Не когда-либо ступил ногой в
класс, хотя я сделал, пять недель Спустя передумаю, которую вы
может также, и переключиться на или из письма градуированных статус.
>> Хорошо.
Таким образом, мы смотрели на вещи, как это на Пятница, и мы очень быстро собирается
к переходу на то, что выглядит более загадочные сегодня.
Но это тем не менее же основные идеи.
Каков был общий термин, который мы используется для описания паззл
, которые выглядели, как это?
>> Так, с заявлением.
И вы можете называть это любым несколько вещей.
Но мы будем называть просто заявление, и заявление
просто сообщает программе -
или в случае нуля, Спрайт -
что-то делать.
Привет в этом случае.
>> Нечто подобное мы Вместо называется и что?
Да, так что логическое выражение.
Логическое выражение, как раз то, , что является истинным или ложным, так и царапинам
привлекает их с этой формой, но и с вопросительным знаком, чтобы передать
Идея о том, что ответ на этот вопрос не является истинным или ложным, да или нет
, 1 или 0.
>> И мы используем эти логические выражения Внутри конструкции, такие как эти, которые
мы назвали Что?
Так, состояние или филиал.
И условие вы видите здесь, в Царапины есть немного заполнителя для
паззл этой форме, цель которого сегодня так, что вы можете
перетащить его и поместите его на вершине, а затем диктовать программу, если этого логического
выражение истинно, делают этот набор инструкций, это набор операторов,
еще делать это другой набор инструкций.
>> И напомнить, что вы можете Гнездо этих вещей.
Даже при том, что не так много места Визуально в этом паззл, царапинам
будет увеличиваться и уменьшаться по размеру независимо головоломки вы перетащите в
там так что вы можете этого и гнезда есть три пути развилки дорог.
IF, ELSE IF, ELSE.
И вы даже можете выйти за пределы, что, вложенности дальше и дальше по мере необходимости.
>> Так, наконец, мы увидели конструкции, такие как этом, иначе известный как цикл.
И это только то, что делает что-то снова и снова и снова.
В этом случае оно произойдет, будет конечное количество раз, но мы также
видели пример, где число раз пришел из переменной, так что
может измениться.
И мы также видели совсем другой блок называется блок, который навсегда
позволило нам петлю бесконечно долго.
>> Так одна конструкция, которая царапинам 2.0 имеет - и те из вас больше
удобная с предварительного фона уже хорошо знакомы с этим
построить -
эти вещи, которые мы называли Что?
Таким образом, мы назвали эти функции, в противном случае известный как процедур.
Там в небольшой семантическое различие, но мы будем называть их просто функциями.
>> И функции, в случае царапинам, является пользовательской части головоломки, которые
Вы сами можете создать, так что у вас есть новая часть головоломки, которая, в данном
случае, можно было бы назвать кашель, что появляется среди всех других
доступные части головоломки с нуля.
Даже при том, MIT не изобретал это паззл, что вы сделали.
>> Так функция позволяет создавать новые поведения, дать ему имя функции и
затем вызвать его, так сказать.
Действительно использовать его в программах снова и снова и снова, не дожидаясь
для кого-то, как MIT вниз по дороге к изобрести новую функциональность с нуля.
Вы сами можете построить эти головоломки части себя, а затем использовать их
в ваших собственных программах.
И мы увидим, например повторяющиеся , что сегодня и далее.
>> Таким образом, сегодня мы переходим сейчас на что-то более сложных.
Но в конце концов, что-то более мощным и выразительным и более
Представитель путь, который мы будем на весь семестр на протяжении ряда
языков -
что код или исходный код.
И исходный код, оказывается, не то, что компьютер
Обычно на самом деле работает.
Исходный код выглядит примерно так.
>> Так что это, опять же, возможно, самый простой программу можно написать в
язык, называемый C. Мы начнем Помимо этого дразнят в скором времени, и если
это действительно выглядит как греческий с вами прямо сейчас, поверьте мне.
В течение всего лишь неделю или две время, это будет слишком хорошо знакомы и на самом деле
достаточно точно отражает ситуацию более сложные примеры, с которыми вы будете
также получить более удобными.
>> Но вы не можете просто запустить эту такого кода обычно.
Вы должны превратить его в нечто, что сам компьютер понимает.
И так для этого, нам нужно что-то мы собираемся называть компилятором.
Компилятор это программа, которая принимает исходный код, как вы только что видели, как
вход, и она производит нулей и те, в качестве выходных, в противном случае
известный как объектный код.
И это те нулей и единиц, что может выглядеть совсем так, что
в конечном счете, понимаются Вашим Mac или компьютеру.
>> Если вы когда-либо слышали маркетинга Выражение Intel Inside, что как раз
означает, что компания под названием Intel выпустила
мозг с компьютером -
иначе известный как центральный процессор, Центральное процессорное устройство -
и это только то, что понимает шаблоны
нулей и единиц.
И таким путем преобразования исходного кода в объектного кода через этот процесс здесь
что мы будем делать с помощью нескольких команд чуть позже, вы
создание шаблонов нулей и единиц что сотрудники Intel есть
решила представлять определенные заявления.
>> Теперь, я даже не знаю, который в том, какой, просто взглянув на
этих нулей и единиц.
Большинство людей в эти дни нет.
Но где-то есть модель нулей и единиц, который представляет
оператора печати.
Где-то там может быть другой набор нулей и единиц, что
представляют понятие или навсегда Повторить 10 раз или даже мяу, если это
фактически это программа, которая может включают некоторые звуки.
>> Короче говоря, люди просто решили, так же, как мы сделали для ASCII -
для букв алфавита на прошлой неделе - люди решили, что даже
к более сложной структуре нулей и единиц представляют собой более сложное поведение
как печать или говорят или мяукать.
И поэтому на сегодняшний день, и в значительной степени вперед в семестр, мы возьмем для
разумеющимся, что кто-то полагал, , как это сделать, что отображение.
Но мы, в соответствии с этой идеей слоев поверх работы людей
которые приехали перед нами, будет принимать для как должное тот факт, что это происходит
под капотом.
Но мы гораздо больше заинтересованы в Здание вещи, которые являются более
интересное на вершине всего этого.
>> И так действительно, первая программа, которую мы писал в этой царапинам было супер просто
Один из них, Hello World.
И вы можете думать об этом как Основной программой, которая управляет для Scratch
поведение по состоянию на прошлую пятницу.
>> Сегодня мы собираемся начать переводить Царапины кусочки головоломки
исходный код на этом языке называется С так, что было похоже на это
Пятница, начиная с сегодняшнего дня и далее, является Теперь будем смотреть, как это.
По общему признанию более загадочными.
Это довольно отвлекает и род умов онемение, чтобы видеть все котировки
и точки с запятой и скобки и так далее.
>> Но если вы начинаете игнорировать все, что вы Не понимаю, и действительно с нетерпением
в сущности белый текст на Экран, конечно, вы видите, как я,
"Hello, World". Это линии с фиолетовый заявление наверху, и оказывается
, что основным ключевым словам собирается выстраиваться концептуально, когда зеленая
Флаг нажал.
>> Итак, другими словами, в то время как в царапинам, мы реализуем эту программу Здравствуй мир
с этими двумя частей головоломки, на С, мы собираемся реализовать его с этим
четыре зашифрованное линий.
Но, как мы углубляться в это, вы видеть, что каждый из этих
белые символы на экране на самом деле имеет ряд существенных смысл,
и большинство наших программ собираются структурно выглядеть совсем то же самое.
Так что заявление, чтобы было ясно, что был похож "Скажи привет мир" на
Пятница собирается начать искать как это на понедельник.
Е ("Hello, World").
И есть некоторые странные обратную косую черту N, есть скобки, есть
точкой с запятой.
>> Но в конце концов, ключ вынос сегодня является то, что все, что мы делаем
переводит вещи из картины образуют в текстовой форме.
Так цикл, который выглядел так на прошлой неделе собирается выглядеть
что-то вроде этого.
>> И позвольте мне отказаться, как и в Царапины, есть различные способы
достижения той же цели.
То же самое в C. Я не показывать вам только способ делать вещи, но один из способов
перевести это навсегда блокировать в цикл в C.
>> Вот эта вот, повторите 10 раз.
Этот действительно вид изгибов ум в первый раз вы его видите.
Но для реализации, что отныне, Мы собираемся использовать
цикл, так сказать.
И ясно есть некоторый синтаксис, что и немного комплексе с и я
равны и 0, но как только мы погружаемся в которые Сегодня и далее, вы только собираетесь
видеть, что это все просто делают некоторые основные арифметические действия, чтобы заставить нас от 0
на до 9 или 10 в этом случае.
>> Наконец, с переменными, вы помните , что переменная часть хранилища.
Ну, что мы имели на левом там в прошлом неделе будет выглядеть немного
что-то вроде этого на этой неделе.
Но опять же, об этом в будущем.
>> У нас были логические выражения, которые на прошлой неделе, выглядит следующим образом.
На этой неделе и далее, они собираются начинают выглядеть немного подобное.
>> А это на самом деле немного обнадеживает.
Это на самом деле почти так же просто как зелень блоков.
Но здесь у нас есть, опять же, некоторые новые синтаксиса с амперсандах, но вы можете
думаю, может быть, в то время как в нуля, вы сказать-N-D, видимо, в C, мы
собирался сказать амперсанд амперсанд.
Но все это станет природные скором времени.
>> Условиями.
На прошлой неделе, казалось, это слева.
На этой неделе, на правом, это будет выглядеть так.
Но, опять же, ключ вынос здесь является то, что как вы видите такие вещи, как, что на
вправо, а особенно, если меньше удобная, это своего рода над вашим
голова, вы получите немного перегружены, что Я действительно понятия не имею, как я мог
возможно придумать что с нуля -
не каламбур -
просто понимаю, что это действительно то же самое Идея, что, вероятно, чувствовал гораздо больше
природные предыдущей недели.
И даже если вы не нырнул в Проблема набора 0, я полагаю, вы найдете
что кусочки головоломки довольно интуитивно, или по крайней мере
стать поэтому с течением времени.
>> Так что давайте погружение дюйма
Давайте пачкать руки здесь с этой первой простой программы.
И простые, конечно, относительны.
Чтобы сделать это, я собираюсь изменить экраны на это устройство я позвонил
CS50 прибора.
CS50 прибор кусок программное обеспечение, которое работает внутри
окна на моем Mac, и вы также можете запустить его в окне внутри вашего ПК, что
позволяет мне иметь точно такой же Компьютерная среда как каждый TF, а
каждый CA, как каждый студент в классе.
Поскольку CS50 прибор буквально другой операционной системы
называется Linux -
специально Fedora Linux -
и мы, сотрудники, настроили процесс установки для этого
операционной системы таким образом, что один, есть немного CS50 логотип в
среднего, два, есть пользовательское меню на дно, и три, педагогической,
Мы упростили пользовательский интерфейс, а насколько возможно, таким образом, что при
первой загрузке эту вещь по своему усмотрению Mac или ПК, у вас та же
среды как все остальные, и вы есть все инструменты, которые понадобятся
по курсу, без выяснения того , как установить и каждого
каждый инструмент в отдельности.
>> Так что это выглядит относительно как Mac OS или окон.
В нижнем левом углу, вы по существу имеют меню Пуск
рода или из меню Apple.
И тогда у вас есть то, что мы подозреваемый быть вашим три наиболее распространенных икон.
Одним из них является Chrome.
Там в браузере внутри аппарата.
>> Два является программа под названием Gedit, которая Кратко мы видели на прошлой неделе, которая является
просто графический редактор.
И три такое терминал программы, которая является черно-белое окно с
прошлых лет, что позволяет нам набрать побольше тайными, но более мощных команд в
нашей клавиатуре.
Так что я собираюсь идти вперед и нажмите на Gedit, и будьте уверены, что проблема
набор 1, который будет выпущен в пятницу, будет вы пройдете через все те же шаги.
>> Обратите внимание, что у меня есть довольно простое Интерфейс пользователя с трех частей.
На левом, у меня есть большие пустые окно с названием исходного кода.
Вот где я собираюсь увидеть резюме любой код, который я пишу.
На правой стороне, у меня есть большой вкладка, в настоящее время спасены, и это
где мой код собирается пойти.
И на дне, я встроенного Окно терминала, черно-белые
Строка в которой я могу вводить команды на компиляции и запуска моей программы - это
есть, сделать и запустить мой программ.
>> Итак, давайте начнем с простого.
Позвольте мне подойти к файл, сохранить.
Я собираюсь идти вперед и идти в jharvard.
Таким образом, устройство, независимо от того, какой ваше имя, принадлежит парню по имени
Джон Гарвард, у кого есть дома jharvard каталогов, внутри которой все свои
Файлы пойдет.
Это ваша собственная копия его счет, так что мы не все обмен
тот же жесткий диск.
Вы просто должны иллюзии собственных Джона Гарварда.
>> Заранее, я на самом деле установлен Dropbox.
Прибор поставляется с preprepared Dropbox, так что если что-то пойдет не так
в течение семестра, если у Вас есть настроили прибор со свободной
Dropbox счет, все ваши файлы будут автоматическое резервное копирование, чтобы вы
может очень легко восстановить их.
И я собираюсь пойти в мою Dropbox каталог, а там уже идет
, есть несколько других вещей там.
>> Но я собираюсь идти вперед и перейдите в меню Файл, Сохранить.
Я собираюсь идти в jharvard, Dropbox, и здесь, я собираюсь
дать моей программе супер просто имя, hello.c, а затем сохраните.
Так что у меня такой же интерфейс теперь.
Единственное, что изменилось является вкладка наверху.
Так что я очень быстро собирается воссоздать что программа от
скользит минуту назад.
>> Так в основных (недействительными), а затем Е, "Hello, World", зашифрованное
N обратную косую черту, недалеко цитаты, закройте скобки, точка с запятой, а
Затем Ctrl S для сохранения.
И обратите внимание, как в стороне, что только что появились здесь в левом верхнем углу.
И это не полезно сегодня, но будет полезно с течением времени.
Вы просто видите, опять же, резюме код, который вы написали.
И потому, что я написал то, что называется Основной, поэтому слово основного выскочил
до туда.
Но по большей части, мы этого не нужно сегодня.
>> Ладно, я утверждаю, что это мое первая программа, написанная на программирование
язык, называемый C. Мы знаем, с пятницы что то, что эта вещь будет делать
очень неинтересно, когда я перспективе это просто показывают -
другими словами, печатать, как компьютер Ученый скажет -
привет мир на экране.
Таким образом, чтобы сделать это, вы заметите, что у меня есть спуститься сюда, чтобы мой терминал
окна, и теперь у меня есть мигающие строки.
Но это теперь клавиатура версии мой Джон Гарвард домашнем каталоге.
Это клавиатура путь, через который провести мой жесткий диск.
>> Поэтому я не могу на самом деле типа, как я сделал на прошлой неделе сделать привет, потому что это
собираюсь сказать не правила для сборки цели -
что-то не так.
Я не совсем знаю, что это сообщение средств, но это потому, что по умолчанию,
При этом черно-белом окне открылся, я внутри Джона Гарварда
домашнем каталоге.
Но где же я сохраню эту программу?
В моей папке Dropbox.
>> Теперь, все мы выросли с компьютера, где вы просто дважды щелкните
на иконку папки, он открывается, и вуаля.
Вот где файл с именем hello.c будет.
Таким образом, в самом деле, давайте сделаем это.
>> Позвольте мне идти вперед и минимизировать Gedit так же, как вы бы на
ОС Windows или Mac OS.
Отпустите меня в главную папку в левом верхнем углу.
Я здесь увидите кучу папок.
Вот моя папка Dropbox.
Галочка означает, что она была синхронизирована.
И есть несколько вещей, здесь, не заметить, что это hello.c
Действительно прямо там.
>> И так в Mac OS или окна, обычно, Я дважды щелкаю, она открывает в
все программы, и я хорошо идти.
Но теперь, по крайней мере, начиная с сегодняшнего дня, мы нужно сделать шаг назад, чтобы просто
дать вам некоторые основные инструменты для вашего набор инструментов, с которым делать больше
мощные вещи в скором времени.
>> Так что по этому приглашению, я должен сделать эквивалентом двойного щелчка
Dropbox папку.
И чтобы сделать это, я собираюсь ввести для CD перейдите в каталог, Dropbox, введите.
А теперь обратите внимание на мои скобках так называемое быстрое теперь говорит, что я нахожусь в
Тильда, немного волнистые символ в левом верхнем углу
большинство клавиатур, / Dropbox.
Это просто сокращенная запись говорят человеку, вы теперь внутри
папку Dropbox, как если бы ты дважды нажал на нее.
>> Так что теперь, если я пойду вперед и тип Марка привет, введите, я вижу, очень загадочным
команда, но не сообщение об ошибке, кажется, а затем
другой мигает строке.
И если вы помните, очень быстро в пятницу, мы сделали это. . / Привет.
>> То, что вы сейчас увидите, является результатом моего запуска этой программы, или, в Mac
ОС и PC условиях, если я обычно дважды нажмите на программу -. приложение
программы или. EXE, он открывает окно и запускает.
Введя. / Привет так же, как двойное нажав программы, чтобы запустить его, но
с помощью моей клавиатуре.
>> Введите, привет мир.
И это все.
Так что давайте дразнить этого на части, чтобы таким образом не чувствует себя слишком много, как греческий.
>> Так. / Означает, что?
Любой, кто когда-либо навигация клавиатуры окружающей среды, как это, что точка
в виду?
Текущего каталога.
>> Таким образом, текущий каталог просто синоним папку.
Так, говоря, точка слэш, я говорю, искать программу под названием Hello в
текущий каталог -
в текущей папке.
Другими словами, мое Dropbox папки.
И именно поэтому после Нажатие Enter на самом деле работает эта программа.
>> Если бы я сейчас типа LS, заметили, что я вижу, все в моей папке Dropbox.
Получение Started.pdf, которая Dropbox дает вам бесплатно, мои фото
каталог: каталог, несохраненные Документ 1, который я сделал по ошибке
Минуту назад foo.c, которое я сделал ранее сегодня, а затем две линии -
hello.c и привет.
>> Hello.c является программа, которую я написал вместе с Gedit, и то, что привет в зеленый?
Привет в зеленом это исполняемый файл.
Другими словами, когда я выполнил эту команду Минуту назад - дайте мне свернуть
назад во времени -
когда я бежал сделать привет, это промежуточный шаг здесь.
И потребовалось hello.c в качестве входных данных -
AKA исходным кодом - и она произвела файл с именем привет, как выход, который
содержит все эти нули и единицы.
И именно поэтому, в конце концов, я могу на самом деле выполнить команду. / привет.
Из-за Intel Inside, моя операционная системы, Linux, открывает эти нули
и единиц, передает их в мозг мой компьютер -
CPU -
CPU и что знает, о, вот шаблон из нулей и единиц, что говорит
распечатать следующие вещи на экране.
>> Что следующую вещь?
Кавычках, "привет мир".
>> Ладно, краткий обзор некоторых из эти команды, так что мы можем начать
принимать их как должное.
Позвольте мне перейти к , где мы остановились.
И вы помните, что у нас были CD на нашем заднем конце минуту назад.
Это, я осмелюсь сказать, для сегодняшних целей -
может быть, на этой неделе - только команды, которые мы может потребоваться ввести в командной
Кроме подскажут сделать.
>> Так CD за что борется?
Перейдите в каталог.
Это просто эквивалент двойного щелчке на папке.
И как в сторону, если вы получаете потерял все внутри вашего
Устройство, таким образом, что Dropbox -
Я хочу вернуться к моим jharvard каталога -
Если вы сомневаетесь, CD, введите, без других словами, и он просто молнии Вас
, где вы начали, которая является миленький ярлык.
>> Ладно, так что теперь другие команды.
LS.
Я набрал, что минуту назад.
Что вы думаете LS означает?
>> Итак, список, не так ли?
Еще в тот день, когда люди приходили с этими командами, они
пытались быть эффективной, и довольно типа из L-I-S-T-Enter, они
решил LS.
Это прекрасно.
Это звучит достаточно, как список.
Давайте просто типа LS войти, и что список файлов и папок в моем
текущей папки.
>> MkDir, вы можете догадаться.
Сделать каталог.
Так что вам не пойти на некоторые меню Файл и выбрать новую папку в этой среде.
Скорее всего, вы вводите команду пространства MkDir а затем имя папки
что вы хотите создать, и это будет сделано.
>> RM, вы можете догадаться.
Удалить или удалить.
Так что если вы хотите удалить файл, вы см. в задаче установите, как
может это сделать.
И RmDir, удалите каталог.
>> Так что, опять же, я, как правило, летают по некоторым из этих деталей, один, потому что
они не все, что же весело провести времени, а два, мы предоставим вам в
гораздо более подробно в любом из Проблема конечно, устанавливает, в частности,
стандартной изданий, любой из стадий что вам может понадобиться ввести так
что вы все больше и больше удобные с этими вещами.
>> Но теперь позвольте мне дразнить друг от друга одна вещь.
Когда мы набрали привет сделать минуту назад, мы видели загадочные последовательности команд.
Мы видели, опять же, сделать привет.
Хорошо, давайте сделаем это.
Я собирался сделать ошибку, но [Неразборчиво] теперь признать, что я был готов
и делают это сознательно.
>> Что я сделала не так сейчас?
Да, так что я не в Dropbox каталог, потому что мгновение назад я
типизированных CD и просто нажмите ввод.
Это увеличенное меня туда, где я начинал, которые не там, где мой файл
, поэтому я действительно нужно сделать, CD Dropbox войти, и теперь я могу делать RM привет
введите, удалить обычный файл привет.
Я не знаю, почему это так загадочно.
Это просто означает, вы уверены, Вы хотите удалить Привет?
Вы можете ввести Y для да, укажите, и теперь его нет.
>> И теперь, если я тип Марка Здравствуйте еще раз, это собирается воссоздать мой объектный код,
воссоздавать эти нули и единицы.
Но то, что сделка с эта команда очень длинная?
Ну, мы это дразнить друг от друга в скором времени, но сделать -
Я сказал немного ложь раньше -
не является компилятором.
Сделать это программа, которая автоматически выясняет, как запустить
компилятор для вас.
>> Так, команда, что вы действительно должны быть работать, для того, чтобы преобразовать hello.c
привет в самом деле выглядит немного больше, как это.
И не дай Бог у нас есть на самом деле помню, чтобы когда-нибудь, что целый тип
Последовательность команд вне.
Цель сделать в жизни, чтобы помнить, что степень сложности
нам и автоматизировать то, что иначе быть очень утомительным шагов.
>> Но я не могу, что приблизительная.
Так что за эту маленькую шпаргалку здесь, я догадываетесь, эта команда
делаю, просто введя лязгом, которая является название компилятора мы будем
с помощью этого семестра.
Если кто-то из вас когда-либо делал IOS развития на iPhone или IPad,
Clang является программой вы использовали в Xcode, чтобы сделать ваши приложения.
Clang, хотя, это просто еще одна программа чье имя мы можем набирать в командной
Подскажите, а путем введения этого сейчас, Я могу представить то, что это
маленький представитель команд в будущем.
Итак, позвольте мне сделать это вручную.
>> Так RM привет, и теперь уведомление при Я, как и санитарной проверки -
. / Привет, как ты думаешь, я должны увидеть, если я могу это сделать?
Какая-то ошибка.
Нет такого каталога файл.
Так что один на самом деле довольно прямой.
>> Так что теперь позвольте мне очистить экран.
Control S просто очищает экран удалить некоторые отвлекающие факторы.
А теперь я собираюсь вручную Тип лязг-O привет hello.c.
Так что же это собирается сделать?
Точно то же самое, что делают сделал для нами, но я выбросить некоторые из
лишних слов.
>> Clang это программа, которая собирается взять. C в качестве входного файла и производить
нулей и единиц на выходе.
Но-о дальнейшем будем называть коммутатора или флагом.
Это просто технарь жаргоне говорят это слово, которое вы вводите в приглашении
что так или иначе влияет на поведение программы вы работаете.
Так кто-нибудь хочет погадать -О, что передает?
>> Выходной.
Это просто кто-то решил означает-O выходной файл с именем привет и взять в качестве
входного независимо от последнего слова на подсказка, hello.c, так что если я ударил
Ввести, ничто, кажется, случилось.
И как ни странно, в этом мире Программирование, если ничего не случится,
это, вероятно, хорошая вещь потому что нет никакой ошибки
сообщение на экране.
Здравствуй, Enter.
Моя программа в настоящее время работают.
>> Но я могу делать глупые мелочи, как это. лязг-O, Hihihi, hello.c,
войти, и теперь у меня есть идентичные программу под названием Hihihi.
Он ведет себя так же, но имя по-особому.
>> Так что это только сказать, что, если вы хотите влиять на поведение
программы, мы собираемся более видеть вещи называются
аргументы командной строки.
Это линия.
Ты ввода команд.
Ergo, командная строка.
И аргументы командной строки просто слова или маленькие кусочки синтаксис,
так или иначе влиять на поведение программ, которые мы проводим.
>> Хорошо, что, пожалуй, самое скучной программой можно записать и посмотреть.
Давайте теперь сделать что-то более интересной.
Позвольте мне пойти дальше и создать новый файл.
Я собираюсь идти вперед и сохранить это в Главная Джона Гарварда каталоге,,
назовем его custom.c, быть немного пользовательские программы.
Я собираюсь увеличить на мою верхнюю часть Вкладки здесь и начать все заново.
>> Включают в себя стандартные stdio.h.
Подробнее об этом в данный момент.
тап_п (недействительными), больше на , что в один момент.
Е ("Привет, Дэвид»).
Гораздо интереснее, не так ли?
>> Итак, если - не потому, что мое имя, только потому, что все по-другому -
сделать пользовательский ввод.
Пользовательские, привет, Дэвид.
Но даже это тоже ложь.
Эта программа может также назвать david.c, потому что это не пользовательский
поведение вообще.
Действительно, я хочу программу, которая спрашивает у пользователя его имя.
>> Так как я могу это сделать?
Ну, позвольте мне прокрутки вверх здесь.
И прежде, чем я использую с заявлением, в Царапины, прежде чем использовать Е,
иначе известный как функцию, пусть меня сначала спросить пользователя что-нибудь ввести.
>> Таким образом, чтобы сделать это, мне нужно сделать несколько вещей.
Один из них, мне нужно место для хранения пользователей назвать после того как я спросил его, или
ее за это.
Какая конструкция мне нужно использовать, вероятно, для хранения значения, как это?
Переменной.
>> Так в отличие от нуля, где вы просто получите хороший кусок головоломки, вот, мы должны
использование, очевидно, слова выразить себя.
И впредь, в любое время вы хотите слово или фразу, в программировании,
мы будем называть это строка.
Так что строка является слово или фразу.
Это последовательность из нуля или более персонажей, более формально.
>> И если вы хотите такой переменной существует, вы должны сказать, дайте мне один.
И способ, с помощью которого вы сделать это, чтобы говорят запятой строку с, где с может быть
все, что угодно.
На самом деле, с немного в восторг.
Позвольте мне идти вперед и более четко называть его имя.
Дайте мне строки с именем имя.
>> Но теперь, что такое человек имя по умолчанию?
Ну, а если человек не вводите ничего в, очевидно, там собирается
нет никакого значения в имени.
И оказывается, в C, если вы не даете переменной значение, это будет
есть мусор значения.
Это, возможно, некоторых случайных нулей и из них, так что вы только собираетесь посмотреть
мусора, по-настоящему, на экране если вы пытаетесь показать его.
>> Но я могу исправить, говорят, на самом деле, магазин внутри имени
следующее значение.
То, как вы храните значения в переменных если у вас есть имя переменной на
налево, вы должны каким-то образом поставить то, что вы необходимо хранить в нем справа, и
синтаксис, что происходит , состоит в следующем.
>> Мы не видели это раньше, но взять на веру, на мгновение, что там
существует еще одно заявление, в мире что я собираюсь снова вызвать функцию,
и эта функция называют получить строку.
И он делает, что буквально.
Это каким-то образом получает последовательность символов от человеческого, а затем
делает что-то с ним.
>> И это будет выглядеть как загадочные синтаксиса.
Обычно, если вы используете знак равенства - вы находитесь в мире, скажем,
алгебра и вы на самом деле говоря х равен 1.
Здесь мы не говорим, что Название равно получить строку.
Мы говорим, что в магазине то, что имя на правой стороне
этого знака равенства.
Знак равенства представляет оператора присваивания.
Это синтаксис, который говорит, что положил на правой стороне внутри что
на левой стороне.
Так получите строка новая часть функциональность, что не только
что-то -
запрашивает у пользователя строку -
она также возвращает его, так сказать.
>> Итак, давайте посмотрим, что происходит происходить здесь.
Я собираюсь идти вперед сейчас и уменьшить масштаб, и я собираюсь получить пару
ошибки в моей строке.
Я собираюсь сделать пользовательский тип, введите.
Ничего себе.
Целая куча ошибок.
>> Ладно, так что это вид Подавляющее, конечно, на первый, но
оказывается, все это очень Правда загадочные сообщения об ошибках
ссылаясь на некие модели, которые мы начинаем видеть в течение долгого времени.
Так что это одна я буду обрывать, , потому что это в первую очередь.
Использование необъявленной строки идентификатора.
>> Это просто означает, что Gedit или Clang, в данном случае, не знает
что я подразумеваю под строкой.
И это потому, что в C, программированию языка, там на самом деле
нет переменной типа строка.
C не знает, что струны существуют.
>> Но мы, CS50 персонал, делают.
И вот в преддверии класс, мы создан файл с именем CS50.h.
А внутри этого файла - и больше на синтаксис впереди -
внутри этого файла определения того, что я только что определили
устно в виде строки.
Так просто, заключив одну строку кода в моей программе, я сейчас
обучения и сделать Gedit и Clang В свою очередь, что строка.
>> Я не знаю, как еще.
Через несколько недель мы кожуры назад этим слоем.
Но сейчас, знаю, что это учит компилятор, что
строка на самом деле.
>> Так что теперь позвольте мне ясно мое Терминал здесь.
Позвольте мне снова запустить создавать собственные, и я решить все эти проблемы.
Так что это тоже будет , повторяющаяся тема.
Я только написал 9 строку программы, и Пока у меня было 18 строк ошибок.
Это вид запугивания.
Но понимаю, что они часто каскад таких что одна маленькая ошибка вызывает
путаницы для компилятора, и он выглядит намного хуже, чем это.
>> Так что теперь проницательный наблюдатель будет знать, что я получаю строку из
пользователей, но я на самом деле не делать то, что с ним?
Я на самом деле не делают ничего с ним.
Так что, если я на самом деле запуск пользовательского снова, это будет просто сидеть там.
Что происходит?
Моя программа, кажется, застрял на какой линии, вы бы сказали?
>> Так это на самом деле застряли в строке 7.
И мы не видели это раньше, но в строке 7, есть, опять же, это
заявление, получить строку.
И это то, что он говорит.
Он ждет теперь для человека взять строку.
Это совершенно неинтуитивными ко мне, человека, потому что у меня не было сказано,
что делать.
>> Но позвольте мне идти вперед на вере и Позвольте мне притворяться Роб.
Enter.
Это не программа собирался.
Так у нас есть первый блог.
>> Но давайте попробуем рассуждать через почему это так.
Во-первых, позвольте мне исправить это первая проблема.
Позвольте мне добавить строку, которая говорит здесь Е, как тебя зовут?
Давайте просто сделать близко цитаты, закрывающая скобка.
>> Теперь позвольте мне повторно запустить программу.
Проблема.
Я не вижу этого.
>> Право.
Я не перекомпилировать.
Таким образом, в языке, как C, потому что вы изменять исходный код не означает,
что вы изменили свой код объекта для генерации нового кода объекта,
новых нулей и единиц.
Вам нужно перекомпилировать.
Если бы я сейчас повторно запустить обычай, введите, ах, немного более ясным.
Меня зовут Боб.
Тем не менее коляске.
>> И я бы утверждать, что есть Теперь пару ошибок.
Это просто выглядит отвратительным, честно говоря.
Мол, минимально, я должен иметь пространстве или переместите
курсора на новую строку.
>> А на самом деле, новая строка.
Это вроде того, ключевая фраза здесь мы видели, но не определен.
То, каким образом вы получаете текст , чтобы перейти на следующую строку,
Вы не сделаете этого.
Это сбивает с толку к компьютеру.
Это выглядит как две отдельные линии кода, ни один из которых
совершенно правильно.
Вы вместо этого должны быть более явным и говорят, дайте мне новую линию, которую мы
представляют в C с косыми н.
>> Таким образом, есть несколько таких символов.
Обратная косая черта N исправим это эстетический.
Позвольте мне перекомпилировать программу.
Позвольте мне снова запустить мою программу.
>> Это выглядит лучше.
Это все еще довольно примитивны, но это также еще багги.
Таким образом, есть одна -
даже если вы никогда не программировали раньше, вероятно, можно сделать предположение
на то, почему эта программа все еще ошибочным.
Что мне нужно сделать, что Я еще не сделал?
>> Так что я на самом деле делать что-то с именем.
Так же, как в нуля, может на самом деле назначить переменную как N или
противодействия, как мы сделали в прошлом неделю - значение.
Но если вы ничего не делаете с она, ничего не случится.
>> Ладно, так что давайте исправим.
Позвольте мне мой тип переменной там, и я пойду сюда.
Позвольте мне перекомпилировать, позвольте мне повторных, Роб.
Теперь я просто идиот, да?
>> Так что это не действительно получаю меня дальше.
Но это было совершенно естественно инстинкту, я бы утверждать, правильно?
Если переменная называется имя, и я хотите, чтобы он там, почему бы мне просто не
введите его там?
>> Ну, конечно, у нас есть различать сейчас
между тем, что является строкой?
Обратите внимание, что в кавычках здесь, привет зовут?
На самом деле это само по себе является строкой.
Это жестко.
Это не от человеческой.
Это от меня, оригинальный программист, но это все еще строку.
>> Так что если вы буквально написать N-А-М-Е внутри струны, то, что будет
напечатана?
Ну, N-А-М-Е. Мы вместо этого нужно Е сказать, не печатают
буквально назвать.
Распечатайте Значение имени и фамилии.
>> И чтобы сделать это, мы делаем следующее.
И это всего лишь человеческие конвенции.
Мы вместо этого говорите% С, и что выступает за строкой.
А потом в конце моего близкого кавычках, Я собираюсь поставить запятую и
передать второй аргумент в этом заявлении.
Я собираюсь ввести имя там.
>> Так что теперь у нас есть заметит немного нового синтаксиса.
У нас еще есть две скобки, а отныне позвольте мне сказать, что материал
в скобках представляет аргументов в функцию -
Входы которые так или иначе собирается влиять на его поведение.
Так по этой логике, сколько аргументов Е вовсе, кажется,
принимая в этот момент?
>> Так что, похоже, берет два, и это действительно подразумевал
по запятая здесь.
Так что это один аргумент в кавычках.
Хотя она имеет запятая в нем, Все в кавычках, что означает,
это одна длинная строка.
Запятая, имя переменной.
>> Так что теперь позвольте мне уменьшения.
Позвольте мне еще раз запустить его.
Роб.
Черт побери, что же я сделал не так?
>> Ладно, так что вам придется перекомпилировать.
Итак, еще раз, легко сделать ошибки на ранних стадиях снова и снова.
Так что теперь повторно запустить обычай, Роб, войти, и вуаля.
Теперь у нас есть своя программа.
>> Так что теперь у меня есть программа, которая с помощью нескольких характеристик
, которые стоит отметить.
Один из них, я использую CS50.h, в противном случае известного как CS50 библиотеки.
И внутри CS50 библиотеки функций, которые другие люди написали -
а именно персонал -
для вас использовать, и получить строка является одним из них.
>> Внутри строки 2 stdio.h, и почему это там?
Сделать предположение.
То, что существует внутри стандартные IO родителя?
Printf.
Так Е, вы не видите его в любом месте еще на экране.
Он должен прийти с Компьютер как-то.
Откуда оно взялось?
Это внутри - это объявить, так сказать, внутри
файл с именем stdio.h.
>> Теперь, на этот материал, мы вернемся в конечном счете, потому что это немного
отвлекает на данный момент.
Это относится к нашим типом возвращаемого значения.
Это относится к аргументу.
Но на сегодняшний день, мы сосредоточены только здесь, на этих линиях.
>> Так имя строки, просто чтобы напомнить, Что же это сделать для меня?
Так что объявили переменную тип строки.
Так что это предназначается, чтобы быть для слов, Не для чисел.
Так же, как в сторону, если я действительно хотел , чтобы это было рядом, я бы сказал,
что-то вроде Int.
Если бы я хотела быть с плавающей точкой Значение, что-то с запятой,
Я бы сказал, с плавающей точкой.
Но на сегодняшний день, я только что сказал строку.
>> И я дал эту переменную имя имя, но я не мог
назвал это ничего.
На самом деле, изначально, я назвал его С.
>> Это вот как раз еще одно заявление.
Сколько аргументов этой заявление принимаете?
Так что это просто принимать, и что просто эстетический деталь
показано то, что на Экран для меня.
Что это за линия 8 делает С точки зрения непрофессионала?
>> Это становится значение из пользователей, а именно - строка -
и то, что он делает с ним?
Это, по существу его сдачи в парень на левой стороне
знак равенства, так что в этом случае имя переменной может фактически сохранить его.
>> А потом другая Е Например функции.
И мы говорим, чтобы вызвать функцию.
Чтобы использовать функцию для вызова функции.
Эта вещь видимо принимает два аргумента.
Это один, запятая, это одно.
>> Этот сама является строкой , который содержит заполнитель.
Средства% S поставить другую строку здесь.
И так, поставив имя после запятая, это вставка
что главное для меня.
>> Так что я могу делать другие вещи, по-прежнему.
Позвольте мне теперь идти вперед и сделать несколько глупая программа, но позвольте мне удалить эту,
и позвольте мне создать цикл.
В то время как истинные.
Символ истинного, очевидно, всегда будет правдой.
Так что же это я петлю индукции путем записи строки, как это?
>> Так бесконечный цикл, правильно?
Просто в то время как истинные.
Там нет, как я могу изменить слово верной быть ничем иным, так что это
просто собираюсь работать вечно.
Так что если вы когда-нибудь на самом деле была программа в вашем Mac или ПК, который, кажется
бы, заручился, или он делает что-то и что-то, и вы просто
не может получить вещь не бросить, если вы перезагрузить компьютер или подтянуть
Диспетчер задач и т.п., Вот такой пример.
>> Я могу сказать: "Я багги программы". Закрыть цитаты, закройте
скобки, точка с запятой.
Итак, еще раз, обратите внимание на модели.
Даже если некоторые из наших новых синтаксис, Ключевое слово в то время, ключевое слово правда,
Заметьте, что я то же вид фигурные скобки.
У меня есть точка с запятой и скобки.
>> А теперь давайте идти вперед и составить этот.
Сделать обычай, обычай.
Поэтому в данный момент, вы не нужно перезагрузить прибор, все в порядке?
Так легкий урок здесь с двумя пальцами, управления C,
мы бросить эту программу.
Но вы можете видеть, почему именно эта вещь повторялась снова и снова.
>> Я могу сделать что-то немного сложнее, так как тизер.
Я собираюсь идти вперед и сказать следующее.
Для внутр, который является целым числом, я просто Родовое название мы даем наиболее
Переменные в программировании, когда вы просто подсчет, равна 0.
Позвольте мне пойти дальше и сказать, пока я есть, скажем так, менее чем в 100, я плюс плюс.
Мы назад в этот синтаксис, но это просто означает,
увеличиваем я снова и снова.
>> И то, что я хочу здесь делать?
Printf: «Я могу считать до Я". Это багги программы.
Что я на самом деле намерены здесь?
>> Процент не с, но за что не догадаетесь это. % D является десятичное целое.
Запятая я.
Позвольте мне вернуться.
>> Позвольте мне теперь делать с перекомпилировать.
Позвольте мне теперь повторно с пользовательскими.
Я могу рассчитывать действительно чертовски быстро, когда Я пишу программу, как это.
>> Теперь давайте сделаем что-нибудь немного непреднамеренным.
Как насчет давайте сделаем это, пока я больше или равно 0.
Что это собирается вызвать?
Так логично, это не так мудр, потому что теперь, если я запустить повторно, пересчет голосов,
Теперь я могу рассчитывать очень, очень высоко.
К сожалению, почти столь же высоким, как я могу счетчик 4000000000, так что это будет
займет некоторое время.
>> Так почему бы нам не оставить это как наш захватывающим, пообещав, что на
Среды, мы увидим, если этой программе делается.
Два, мы представим, как вы себя написать свою собственную функцию, так что очень
быстро, в среду, мы будем, как мы Переход с нуля в С, начать
письменно все более и более сложными программ, которые делают много,
намного больше, чем эта.
Мы будем видеть вас тогда.
>> [Аплодисменты]
>> Выступающий 1: На следующей CS50, Головоломка День удался.