C/C++

Вопросы о C++

Что такое за понятие "caller"?
Как работает return простым языком
Как понять и запомнить каждую функцию? По типу "Int add(), void и другое"
Что такое void?
Я часто путаю << с >> или наоборот,
Я путаю std::endl с std::sin, как их различать?
return: когда ты пишешь функцию, проводишь в ней какие-то вычисления и хочешь, чтоб этот результат был передан тебе в основную функцию (main), то ты используешь return (он также заканчивает выполнение функции):
 int название(что-то, с чем будем работать) {
считаю что-то;
return получите, распишитесь;
}
int main() {
название(посчитай это);
}
Перед названием функции пишется тип, который return тебе возвращает. То есть, если ты хочешь, например, посчитать сумму целых чисел, то она(сумма) будет целой, поэтому int название(), если ответ дробный, то double название(), если хочешь проверить условие, то bool, например:
 bool какой_сегодня_день(день) {
if (день - это выходной?) return true(если день выходной);
else return false (если день будний);
}
int main(){
день = понедельник;
какой_сегодня_день(эй, понедельник - это выходной?); // вернётся false,
//потому что нет
}
Если тебе ничего не надо возвращать, скажем, если у тебя функция выводит просто что-то или работает с глобальными переменными, то использую void. Здесь тебе не надо использовать return.
 void helloworld(){
cout
Asadullo Buzrukxonov
Asadullo Buzrukxonov
9 983
Лучший ответ
Александр Иевлев Я последнюю путаницу понял и запомнил,
Void вроде специальное указание, которое указывает на обьеков любого типа данных, или это неправильно?
Запомнить << и >> очень легко: это стрелочки, показывающие направление передачи данных:

cin >> q; - значение читается с клавиатуры (cin) в переменную q.
cout << q; - значение переменной q выводится на экран (cout).
Александр Иевлев Ну когда ты подустал читать и учиться как писать коды просто случайно их путаешь, даже в источнике и везде пишут, что даже опытные программисты по случайности путают << и >>
Это фактически недостатки твоего знания английского языка. void переводится как пусто. endl - end line - конец строки. Практически всё это аббревиатуры англоязычных слов и словосочетаний. Ничего страшного, но очень полезно помнить, откуда взялось то ли иное сокращение. Например, cin - console input (ввод с консоли).И т.д.
Запоминать каждую функцию не надо, для этого есть справка по языку. Надо только помнить, что есть какая-то функция. которая делает вот то-то, дальше уже ее и все детали ее вызова легко найти в справке.
Сергей Форкуш
Сергей Форкуш
92 085
Александр Иевлев Я некоторые аббревиатуры понял, а другие нет, как я мог догадаться что cin - console input? Я английский знаю немного, но могу некоторые слова понимать, return - возврат, doubleNumber() - удвоение числа, хотя некоторое могу спутать.
> Что такое за понятие "caller"? "Вызывающий". Некоторая сущность, которая будет вызывать программный код.
> Как работает return простым языком.
Вычисляет значение возврата и выходит из функции.
>Как понять и запомнить каждую функцию? По типу "Int add(), void и другое"
я не знаю, что такое "Int add()" без контекста. Не нужно пытаться понимать или запоминать какие-то рандомные вещи, не имеющие смысла вне какой-то задачи. void - это вообще не функция, а тип.
> Я часто путаю << с >> или наоборот,
Большинство программистов, специально не тренировавшихся писать код на бумаге без компилятора (этот навык имеет смысл только для прохождения собеседований) допускают пару подобных ошибок на килобайт текста, полагаясь на то, что подобное будет подсвечено компилятором.
>Я путаю std::endl с std::sin, как их различать?
еще и std::sin с std::cin видимо... Различать по смыслу. Не помните - открываете справку по языку, благо гугл сейчас всегда под рукой
Александр Иевлев Просто на источниках на которых я читаю уроки просто усложнён текст, поэтому некоторые части я просто непонимаю или понимаю но немного по-другому.