Препроцессор что это. Директива

  Рет қаралды 115,128

#SimpleCode

#SimpleCode

6 жыл бұрын

Понравилось видео или оказалось полезным? Подпишись!
Препроцессор что это. Директива #define. Макросы. Директивы препроцессора что это. C ++ Урок #66
Уроки по программированию
Наша группа ВК smplcode
Подписывайтесь на канал / @simplecodeit

Пікірлер: 120
@max325475685
@max325475685 6 жыл бұрын
Я просто скачал видео( т.к. не имею доступа к безлимитному интернету в 21 веке) и решил отлайкать все с первого урока. Не устану говорить спасибо! Добавьте пожалуйста номер счёта. есть люди, которые желают отблагодарить вас материально
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
Пожалуйста! Благодарю за поддержку! Ссылка для тех кто желает отблагодарить материально www.donationalerts.ru/r/simplecode
@alexxxusxxi
@alexxxusxxi 5 жыл бұрын
Поддерживаю, у Сергея есть курс на Udemy. Я уже купил. Еще бы руку пожать! :)
@Next__Play
@Next__Play 3 жыл бұрын
@@alexxxusxxi Я случайно зашел на этот канал. Почему то мне не показывает Ютуб в рекомендуемые....
@kerundy8804
@kerundy8804 3 жыл бұрын
@@alexxxusxxi Можешь, пожалуйста, дать ссылку на udemy Сергея?
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
#препроцессор #define #SimpleCode #урокипрограммирования
@HeavenofTERA
@HeavenofTERA 5 жыл бұрын
После этого урока, перевел все директивы на эмодзи символы :D
@nap0le0nb0naparte7
@nap0le0nb0naparte7 6 жыл бұрын
include знал,а вот define щас понял как работает,удобно,Спасибо Сергей!!!
@trumpdmitry2288
@trumpdmitry2288 5 жыл бұрын
Гайд о том , как создать Йопта скрипт
@sgeinok5950
@sgeinok5950 3 жыл бұрын
ахахах, тоже об этом подумал!
@o_o2291
@o_o2291 3 жыл бұрын
Точнее Йопта++
@jellyfish6042
@jellyfish6042 2 жыл бұрын
Лол, а что это
@user-ur3mc6hb5d
@user-ur3mc6hb5d Жыл бұрын
хахаха, сделал
@KraionixX
@KraionixX 4 жыл бұрын
*Написал 1C на C++* #include #define процедура int main #define установить_язык setlocale #define ру "ru" #define ЛОКАЛИЗОВАТЬ_ВСЕ LC_ALL #define использовать_пространство_имен using namespace #define вернуть return #define вывести cout #define новстроч endl использовать_пространство_имен std; процедура() { установить_язык(ЛОКАЛИЗОВАТЬ_ВСЕ,ру); вывести
@cicada666
@cicada666 3 жыл бұрын
Ты в конце фигурную скобку забыл)
@artsam7617
@artsam7617 3 жыл бұрын
Интересно, но тупо и бесполезно. Проще изначальными методами и понятней.
@Anonymous-jr1vx
@Anonymous-jr1vx 3 жыл бұрын
@@artsam7617 ну не понятней). Зато у меня программа долго загружается и англ программистам не понятно будет).
@user-zc6pd7jr3i
@user-zc6pd7jr3i 3 жыл бұрын
а Вы не из 1С программистов?
@firstandlast4435
@firstandlast4435 2 жыл бұрын
Жжешь) интересно а часто встречаемые части кода можно так сокращать, было бы удобно, возможно)
@JohnSmith-es2fh
@JohnSmith-es2fh 3 жыл бұрын
удивительно то, как define облегчает жизнь при работе с большими проектами, спасибо за *ОТЛИЧНОЕ* объяснение
@skorp291
@skorp291 6 жыл бұрын
Очередной лайк!!! Не перестаю восхищаться умением автора донести информацию в сжатом и в то же время доступном формате!!!!
@TheWladberlin
@TheWladberlin 4 жыл бұрын
Define - макрос, конечно, очень удобная и полезная штука, но из практики могу только сказать - злоупотреблять не стоит. Особенно с переписыванием синтаксиса языка. Проходит немного времени, ты забываешь те мысли, которые ты туда вкладывал, и код становится откровенно корявым и нечитабельным, только из-за того что это уже не стандартный язык программирования. Самое оптимальное применение, к примеру в Ардуино, назначение названий портов, цвета лампочек, различные константы и т.д и т.п, и прочие технические штуки, но желательно минимум вмешательства в стандарт синтаксиса языка.
@princessmary5556
@princessmary5556 10 ай бұрын
Вы пишете: *желательно минимум вмешательства в стандарт синтаксиса языка* Вмешательство в стандарт синтаксиса языка - это UB
@user-ky3jd6bl9c
@user-ky3jd6bl9c Жыл бұрын
Как же хорошо можно преподавать язык Си! Настолько привыкаешь к вашему голосу и спокойной подаче информации - что включаешь даже фоном для успокоения)
@Next__Play
@Next__Play 3 жыл бұрын
Спасибо большое. Вы все правильно описали. Гайвер в своих прогах все в девайнах захреначил.... Я даже в ступор сначала ушел.......
@chelovechek7773
@chelovechek7773 Ай бұрын
спасибо!
@zinger7833
@zinger7833 8 ай бұрын
Спасибо за краткость и ясность!
@user-hj9eo7ul7i
@user-hj9eo7ul7i Жыл бұрын
Спасибо большое за качественные уроки. Актуально и по сей день!
@archiechellaut9483
@archiechellaut9483 2 жыл бұрын
Большое спасибо вам за урок и прекрасное пояснение, Сергей!
@user-hz4ho1ox1q
@user-hz4ho1ox1q 4 жыл бұрын
Спасибо за знания !
@user-gx5rl9jq5z
@user-gx5rl9jq5z Жыл бұрын
Хотел понять что такое define, теперь стало ясно, спасибо!
@user-qw2xx6ef8r
@user-qw2xx6ef8r 4 жыл бұрын
Спасибо, Сергей, за столь хорошую информацию
@andreich063
@andreich063 4 жыл бұрын
Посмотрел видео и понравилось как преподносит информацию . лайкну и буду смотреть дальше.
@user-zq5dz5yx9s
@user-zq5dz5yx9s 6 жыл бұрын
Спасибо)
@user-xm5zl9up4r
@user-xm5zl9up4r 5 ай бұрын
спасибо
@moratoPg
@moratoPg 6 жыл бұрын
Спасибо !
@kerundy8804
@kerundy8804 3 жыл бұрын
Круто! Интересная тема
@piotrusyi
@piotrusyi 3 жыл бұрын
Благо дарю за урок)
@shamanjoe7508
@shamanjoe7508 6 жыл бұрын
спасибо большое!
@serhiizamkovyi9288
@serhiizamkovyi9288 6 жыл бұрын
Блин, все супер! Чего так мало просмотров? Уроки заслуживают больше!
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
Благодарю, за поддержку! Исправить ситуацию очень просто, если все кому нравятся мои уроки сделают по репосту или жмакнут лайк=)
@jangiryanarsen4952
@jangiryanarsen4952 6 жыл бұрын
Потому что многие считают программирование(вообще науку) не искусством, искусством математики физики итд тип , а занудство. .
@user-ku3xu7xc6b
@user-ku3xu7xc6b 4 жыл бұрын
@@loner7222 +
@mar_kha
@mar_kha 2 жыл бұрын
Не у всех хватает терпения и настойчивости( Кто-то понимает, что программирование - это не его, а кому-то только предстоит узнать)
@geroitruda8157
@geroitruda8157 2 жыл бұрын
@@mar_kha ,часто лень и отсутствие дисциплины, перечеркивает обучение на корню. Даже если у человека есть хорошие задатки к обучаемости.
@user-so9zy7er7x
@user-so9zy7er7x 6 жыл бұрын
Спасибо !!
@MagicMath02
@MagicMath02 2 жыл бұрын
Ваш видое уроки всегда мне будет полезно, именно нам студентам ! Вам большое спасибо! Продолжаете дальше и развиваете👍✊
@Firuz26
@Firuz26 6 жыл бұрын
Спасибо
@Ermine882
@Ermine882 6 жыл бұрын
Очередное спасибо за урок.
@irmaheigern6706
@irmaheigern6706 2 жыл бұрын
Большое спасибо!❤🍪
@gagikarakelyan6014
@gagikarakelyan6014 4 жыл бұрын
Спасибо.
@javacoderfromchengdu2734
@javacoderfromchengdu2734 5 жыл бұрын
благодарствую.
@asker7085
@asker7085 4 ай бұрын
👍👍👍
@rettjaconomaili8201
@rettjaconomaili8201 6 жыл бұрын
Спасибо!)
@SimpleCodeIT
@SimpleCodeIT 6 жыл бұрын
Пожалуйста!
@trainrobloxcar1159
@trainrobloxcar1159 2 жыл бұрын
Храни вас Бог!!!! я уже свихивалась потихоньку. Вы так всё прекрасно объясняете
@fitileo
@fitileo 8 ай бұрын
Что же ты раньше молчал о такой прекрасной штуке.Теперь я не буду писать этот cout
@user-rr6lu3kg8y
@user-rr6lu3kg8y Жыл бұрын
Да уж, было интересно. Об этом обычно рассказывают как основы в начале, но это больше похоже на фишку которую можно использоваться уже после того как ты знаешь хоть что-то. Не удивительно что многи люди просто забывают об этом
@den1ssss
@den1ssss 6 жыл бұрын
Сергей, а правильно я понимаю. что если include подключает файл, то если написать #include , или еще дополнительно дописать путь к файлу, то он будет брать данные оттуда?
@arcudaOgk
@arcudaOgk 5 жыл бұрын
Спасибо! Отблагодарил вас небольшим бонусом). Прикрепите лучше ссылку в описание к видео - "Для тех кто желает отблагодарить материально www.donationalerts.ru/r/simplecode "
@alexandrsargsyan2202
@alexandrsargsyan2202 2 жыл бұрын
spasibo
@user_name_mr_x
@user_name_mr_x 3 жыл бұрын
Чтобы не было проблем, как с begin, лучше всегда писать простанство имён std, так будет std::begin() и begin как скобочка))
@user-np1hh3pt7y
@user-np1hh3pt7y 5 жыл бұрын
А в ООП макрос тоже так же функционирует или есть свои нюансы?
@Sooderone
@Sooderone 19 күн бұрын
🧠
@rubiks7196
@rubiks7196 5 жыл бұрын
Begin end паскалик любимый точней приевшийся
@alexandrsargsyan2202
@alexandrsargsyan2202 2 жыл бұрын
👍👍👍🤘🤘🤘🤘🤘
@user-ic2wx3qw1w
@user-ic2wx3qw1w 4 жыл бұрын
В main скобки забыл заменить на begin и end!
@directorys
@directorys 2 жыл бұрын
Я так понял, что с помощью define можно такое на куивертить с синтаксисом, что получится в стуктуре всё тот же cpp, но выглядеть он будет как что-то совсем извращенное. Написав такой вот define хэдэр можнл юзать свои кастом плюсы. Прикольно)
@princessmary5556
@princessmary5556 10 ай бұрын
Да) Только так никто обычно не делает. У препроцессора совсем другая задача: адаптация кода программы для сборки различными компиляторами, а так же упрощение использование сложно-замороченного кода конечными юзерами. Например, в тестовых фреймворках наподобие gtest, что бы создать юнит-тест, вы пишете что-то вроде: UNIT_TEST(Sample) { код теста } На самом деле макрос UNIT_TEST разворачивается во что-то очень сложно-замороченное. Но вам, пользователю, об этом думать не нужно. Вы можете просто писать: UNIT_TEST и не заморачиваться.
@gunnargunaxe
@gunnargunaxe 4 жыл бұрын
Спасибо за разъяснения, всё примерно так и думал. Но вот недавно я решил исследовать библиотеки stm32 и у меня мозг просто закипел от этих дефайнов. Там дефайн на дефайне и дефайном погоняет. Один заменяет другой, другой заменяет третий, третий заменяет какую то функцию которая находится в другом хэдере и в котором то же макросы макросы макросы!!! бл скаа как это читать? как это работает вообще?
@comachine
@comachine Жыл бұрын
даа, ебаные завёрнутые клубки, которые нужно разворачивать, ляпота хавхавха
@DigitRoach
@DigitRoach 2 жыл бұрын
Добро пожаловать в 2021 здесь господствует Pascal++
@okar1n922
@okar1n922 Жыл бұрын
С begin и end - вообще проблем не будет, если не использовать: "using namespace std;" даже создатель крестов об этом говорил, что не очень хорошо использовать это.
@Viamsupervadetvadens
@Viamsupervadetvadens 6 жыл бұрын
up
@MrNichosik
@MrNichosik 2 ай бұрын
а если у меня константа inline, которая тоже при компиляции подставляется в коде, то в чём тогда отличие? Кроме того, что компилятор может игнорировать inline
@itsallride9847
@itsallride9847 4 жыл бұрын
Ну точно паскаль(begin и end);
@WebArchitector
@WebArchitector 5 жыл бұрын
Спасибо, есть вопрос, как вы так быстро комментируете код ? Подскажите пожалуйста.
@heathcliff3440
@heathcliff3440 5 жыл бұрын
Ctrl+K, Ctrl+C, чтобы раскомментировать - Ctrl K, Ctrl+U
@sultanaliyev4887
@sultanaliyev4887 2 жыл бұрын
Канал невероятно крутой, кто-нибудь может поделиться подобным же каналом по Пайтону или Джава. Можно и платные курсы. Можно и на немецком языке.
@jaloliddinhazratqulov891
@jaloliddinhazratqulov891 2 жыл бұрын
Такой канал болше нету
@melonystalker3714
@melonystalker3714 2 жыл бұрын
Если я подключаю библиотеку к программе и использую из нее только одну функцию, остальные подгружаются или нет? Как это влияет на производительность?
@princessmary5556
@princessmary5556 10 ай бұрын
Не библиотеку, а заголовок. Конечно подгружаются. Компилятор не телепат. Как по вашему он сможет понять, что именно там есть, и что именно оттуда будет использовано, если не подгрузит содержимое заголовка?
@princessmary5556
@princessmary5556 10 ай бұрын
Вы спрашиваете: *Как это влияет на производительность?* Никак.
@user-qy8dg4rm8i
@user-qy8dg4rm8i 3 жыл бұрын
Константа, которая является макроопределением
@meyosh8734
@meyosh8734 4 жыл бұрын
Захотелось написать крестики нолики и даже получилось. Сначала сделал уродскую через goto и тд. Потом довел до такого варианта: #include #include #include using namespace std; int main(); void win() { string a; cout a; main(); } void lose() { string a; cout a; main(); } void draw(char arr[][3]) { system("cls"); for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { cout > pos2; pos1 -= 1; pos2 -= 1; while ((pos1 < 0 || pos2 < 0 || pos1 > 3 || pos2 > 3) || (arr[pos1][pos2] == 'x') || (arr[pos1][pos2] == '0'|| (arr[pos1][pos2] == ' '))) { cout > pos1 >> pos2; pos1 -= 1; pos2 -= 1; } arr[pos1][pos2] = 'x'; } void pc(char arr[][3]) { int pos1 = 1, pos2 = 1; while (arr[pos1][pos2] != '*') { pos1 = rand() % 3 + 1; pos2 = rand() % 3 + 1; pos1 -= 1; pos2 -= 1; } arr[pos1][pos2] = '0'; } void check(char arr[][3]) { if (arr[0][0] == 'x' && arr[1][0] == 'x' && arr[2][0] == 'x') // { // * win(); // * } // * // if (arr[0][0] == 'x' && arr[0][1] == 'x' && arr[0][2] == 'x') // { // * * * win(); // } // // if (arr[0][2] == 'x' && arr[1][2] == 'x' && arr[2][2] == 'x') // { // * win(); // * } // * // if (arr[2][0] == 'x' && arr[2][1] == 'x' && arr[2][2] == 'x') // { // win(); // } // * * * if (arr[0][1] == 'x' && arr[1][1] == 'x' && arr[2][1] == 'x') // { // * win(); // * } // * // if (arr[1][0] == 'x' && arr[1][1] == 'x' && arr[1][2] == 'x') // { // win(); // * * * } // // if (arr[0][0] == 'x' && arr[1][1] == 'x' && arr[2][2] == 'x') // { // * win(); // * } // * // if (arr[2][0] == 'x' && arr[1][1] == 'x' && arr[0][2] == 'x') // { // * win(); // * } // * if (arr[0][0] == '0' && arr[1][0] == '0' && arr[2][0] == '0') // { // * lose(); // * } // * // if (arr[0][0] == '0' && arr[0][1] == '0' && arr[0][2] == '0') // { // * * * lose(); // } // // if (arr[0][2] == '0' && arr[1][2] == '0' && arr[2][2] == '0') // { // * lose(); // * } // * // if (arr[2][0] == '0' && arr[2][1] == '0' && arr[2][2] == '0') // { // lose(); // } // * * * if (arr[0][1] == '0' && arr[1][1] == '0' && arr[2][1] == '0') // { // * lose(); // * } // * // if (arr[1][0] == '0' && arr[1][1] == '0' && arr[1][2] == '0') // { // lose(); // * * * } // // if (arr[0][0] == '0' && arr[1][1] == '0' && arr[2][2] == '0') // { // * lose(); // * } // * // if (arr[2][0] == '0' && arr[1][1] == '0' && arr[0][2] == '0') // { // * lose(); // * } // * } int main() { cout
@meyosh8734
@meyosh8734 4 жыл бұрын
#include #include #include using namespace std; void win() { cout 3 || pos2 > 3) ||(arr[pos1][pos2]=='x') || (arr[pos1][pos2] == '0')) { cout > pos1 >> pos2; pos1 -= 1; pos2 -= 1; } arr[pos1][pos2 ] = 'x'; } void change2(char arr[][3]) { int pos1, pos2; cout > pos1 >> pos2; pos1 -= 1; pos2 -= 1; while ((pos1 < 0 || pos2 < 0 || pos1 > 3 || pos2 > 3) || (arr[pos1][pos2] == 'x') || (arr[pos1][pos2] == '0')) { cout > pos1 >> pos2; pos1 -= 1; pos2 -= 1; } arr[pos1][pos2] = '0'; } void pc(char arr[][3]) { int pos1=1, pos2=1; while (arr[pos1][pos2]!='*') { pos1 = rand() % 3 + 1; pos2 = rand() % 3 + 1; pos1 -= 1; pos2 -= 1; } arr[pos1][pos2] = '0'; } void check(char arr[][3],bool &z) { if (arr[0][0] == 'x' && arr[1][0] == 'x' && arr[2][0] == 'x') // { z = false; // * win(); // * } // * // if (arr[0][0] == 'x' && arr[0][1] == 'x' && arr[0][2] == 'x') // { z = false; // * * * win(); // } // // if (arr[0][2] == 'x' && arr[1][2] == 'x' && arr[2][2] == 'x') // { z = false; // * win(); // * } // * // if (arr[2][0] == 'x' && arr[2][1] == 'x' && arr[2][2] == 'x') // { z = false; // win(); // } // * * * if (arr[0][1] == 'x' && arr[1][1] == 'x' && arr[2][1] == 'x') // { z = false; // * win(); // * } // * // if (arr[1][0] == 'x' && arr[1][1] == 'x' && arr[1][2] == 'x') // { z = false; // win(); // * * * } // // if (arr[0][0] == 'x' && arr[1][1] == 'x' && arr[2][2] == 'x') // { z = false; // * win(); // * } // * // if (arr[2][0] == 'x' && arr[1][1] == 'x' && arr[0][2] == 'x') // { z = false; // * win(); // * } // * if (arr[0][0] == '0' && arr[1][0] == '0' && arr[2][0] == '0') // { z = false; // * lose(); // * } // * // if (arr[0][0] == '0' && arr[0][1] == '0' && arr[0][2] == '0') // { z = false; // * * * lose(); // } // // if (arr[0][2] == '0' && arr[1][2] == '0' && arr[2][2] == '0') // { z = false; // * lose(); // * } // * // if (arr[2][0] == '0' && arr[2][1] == '0' && arr[2][2] == '0') // { z = false; // lose(); // } // * * * if (arr[0][1] == '0' && arr[1][1] == '0' && arr[2][1] == '0') // { z = false; // * lose(); // * } // * // if (arr[1][0] == '0' && arr[1][1] == '0' && arr[1][2] == '0') // { z = false; // lose(); // * * * } // // if (arr[0][0] == '0' && arr[1][1] == '0' && arr[2][2] == '0') // { z = false; // * lose(); // * } // * // if (arr[2][0] == '0' && arr[1][1] == '0' && arr[0][2] == '0') // { z = false; // * lose(); // * } // * } int main() { bool z = true; string answer; int players; setlocale(0, ""); srand(time(NULL)); start: char arr[3][3]{ {'*','*','*'},{'*','*','*'},{'*','*','*'} }; cout > players; draw(arr); change1(arr); check(arr,z); draw(arr); if (z == false) { goto fin; } if (players == 1) { pc(arr); } else change2(arr); draw(arr); check(arr, z); if (z == false) { goto fin; } change1(arr); draw(arr); check(arr, z); if (z == false) { goto fin; } if (players == 1) { pc(arr); } else change2(arr); draw(arr); check(arr, z); if (z == false) { goto fin; } change1(arr); draw(arr); check(arr, z); if (z == false) { goto fin; } if (players == 1) { pc(arr); } else change2(arr); draw(arr); check(arr, z); if (z == false) { goto fin; } change1(arr); draw(arr); check(arr, z); if (z == false) { goto fin; } if (players == 1) { pc(arr); } else change2(arr); draw(arr); check(arr, z); if (z == false) { goto fin; } change1(arr); draw(arr); check(arr, z); if (z == false) { goto fin; } cout
@Ivan-Shyriaiev
@Ivan-Shyriaiev 4 жыл бұрын
Я тестанул, прикольно ;)
@meyosh8734
@meyosh8734 4 жыл бұрын
@@Ivan-Shyriaiev глупо такой программой хвастаться, но я старался)
@RrRrRrRroman
@RrRrRrRroman Жыл бұрын
@@meyosh8734 круто! единственно еще бы объяснялку по координатам для игрока вначале)
@blackgolddev4023
@blackgolddev4023 4 жыл бұрын
Получается когда уже дело доходит до компиляции то вместо макроса компилятор видит уже сразу значение? а когда переменная то компилятор видит адрес переменно потом идёт по адресу и только после всего этого берёт значение?
@Ivan-Shyriaiev
@Ivan-Shyriaiev 4 жыл бұрын
Получается так ...
@user-qu5ch6rl4f
@user-qu5ch6rl4f 2 жыл бұрын
Компилятор не может видеть адрес, так как он выделяется уже скомпилированной переменной.
@biscvie
@biscvie Жыл бұрын
+
@SAD-oe9lw
@SAD-oe9lw 3 жыл бұрын
7:06 - это что за комбинация клавиш позволяет так делать??
@lacklacktriplehack4174
@lacklacktriplehack4174 3 жыл бұрын
Выделите фрагмент кода, который хотите закоментировать и нажмите Ctrl + K, C (удерживая Ctrl нажать K, затем C). Для снятия комментариев нужно выделить закомментированный кусок и нажать Ctrl + K, U. так же есть такое ценное ОЧЕНЬ даже ценное умение для программиста как УМЕНИЕ ГУГЛИТЬ если не умеешь гуглить учись если не хочешь учится то изучать программирование нет смысла
@SAD-oe9lw
@SAD-oe9lw 3 жыл бұрын
@@lacklacktriplehack4174 Гуглить я умею. Нашёл уже давно информацию. Написал комментарий для других, кто тоже интересуется этим вопросом. Наткнутся на мой коммент и увидят твой ответ
@lacklacktriplehack4174
@lacklacktriplehack4174 3 жыл бұрын
@@SAD-oe9lw ну просто ниже уже дали ответ
@viktort9326
@viktort9326 4 жыл бұрын
Если мы не будем использовать "using namespace std" , а прописывать "std::begin", то мы ведь не столкнёмся с этой проблемой? Вообще многие не рекомендую использовать "using namespace std"
@user-fk2rj1jw2k
@user-fk2rj1jw2k Жыл бұрын
почему
@princessmary5556
@princessmary5556 10 ай бұрын
@@user-fk2rj1jw2k Проф. программисты действительно предпочитают явно указывать пространство имен по ряду причин: 1 - улучшает читабельность кода. 2- защита от коллизий имен.
@user-dt8qm1zy7w
@user-dt8qm1zy7w 3 жыл бұрын
шифровать свой код можно))
@BazirAndrei
@BazirAndrei Жыл бұрын
Почему не пишется знак = ...? PI = 3.14
@DarkdalV
@DarkdalV 6 жыл бұрын
а если std::begin()? всеравно заменят?
@SimbaYouTubeChannel
@SimbaYouTubeChannel 6 жыл бұрын
здаров чувк, да, препроцессор пробежится по всему коду и где встретит слово begin заменит абсолютно все на то, что было задано ему в #define
@princessmary5556
@princessmary5556 10 ай бұрын
1:40 Вы подключили заголовок. Подключение заголовка так и называется: "подключением заголовка", и не имеет никакого отношения к подключению библиотек.
@sleepyNovember_project
@sleepyNovember_project 6 ай бұрын
А почему тут не надо указывать ".h"?
@princessmary5556
@princessmary5556 6 ай бұрын
​@@sleepyNovember_project По одной из версий, в именах стандартных заголовков отсутствует расширение, что бы подчеркнуть различие между пользовательскими заголовками и стандартными. Пользовательские заголовки - это всегда файлы. А вот стандартные заголовки, строго говоря, файлами быть не обязаны.
@sleepyNovember_project
@sleepyNovember_project 6 ай бұрын
@@princessmary5556 благодарю за такое пояснение!
@smsolt6949
@smsolt6949 5 жыл бұрын
Словами не передать как я благодарен автору канала. Благодаря вам у меня есть шанс закончить шарагу. ... cout
@olegbocharnikov950
@olegbocharnikov950 5 жыл бұрын
ВАУ!!! ПРОГРАММИРОВАТЬ МОЖНО ПО РУССКИ #include"pch.h" #include #include #include #define pi 3.14 #define начало { #define конец } #define вывод cout
@mukhavertolet
@mukhavertolet 4 жыл бұрын
Кумир в помощь
@sgeinok5950
@sgeinok5950 3 жыл бұрын
Ну шо пацаны, погнали свои недоЯПы писать?)
@princessmary5556
@princessmary5556 10 ай бұрын
1:06 Вы говорите о подключении файла, но при этом указываете на стандартный заголовок. Здесь вы допускаете грубую ошибку. Согласно правилам языка с++, стандартные заголовки предоставляются реализацией, и формально, вообще не являются файлами.
@user-wo1dx1rz4z
@user-wo1dx1rz4z 6 жыл бұрын
Спасибо!
@vladimirdiadichev6140
@vladimirdiadichev6140 6 жыл бұрын
Спасибо
@user-kb6qd8rg4g
@user-kb6qd8rg4g 4 жыл бұрын
спасибо
@user-dx8xp3im8s
@user-dx8xp3im8s 4 жыл бұрын
Спасибо
@edgull_tlt
@edgull_tlt 2 жыл бұрын
Спасибо
Неприятная Встреча На Мосту - Полярная звезда #shorts
00:59
Полярная звезда - Kuzey Yıldızı
Рет қаралды 7 МЛН
ROCK PAPER SCISSOR! (55 MLN SUBS!) feat @PANDAGIRLOFFICIAL #shorts
00:31
Каха ограбил банк
01:00
К-Media
Рет қаралды 10 МЛН
ПРОГРАММИСТЫ! ВСЕ СЮДА...
14:25
Winderton
Рет қаралды 317 М.
C++ Разработчик учит Python
28:01
Winderton
Рет қаралды 494 М.
Собеседование Junior C++
45:32
Ambushed Raccoon
Рет қаралды 102 М.
Неприятная Встреча На Мосту - Полярная звезда #shorts
00:59
Полярная звезда - Kuzey Yıldızı
Рет қаралды 7 МЛН