Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.06.2015, 15:43   #1
umirotvorennii
Пользователь
 
Регистрация: 15.02.2015
Сообщений: 16
По умолчанию Что за функция

Подскажите что за функция в начале после включения операторов (учебник древний так что на стд можно внимания не обращать). Я так и не понял что за функция, с ней программа прекращает работать после cin>>nNCelsius;(а так же эта функция нигде не вызывается). Если её заменить на обычный воид маин воид то прога работает полностью. Короче либо я дурак либо лыжи не едут
Код:
// Программа для преобразования
// градусов Цельсия в градусы Фаренгейта:
// Fahrenheit = NCelsius * (212 - 32)/100 + 32
//
#include <stdio.h>
#include <iostream.h>
int main(int nNumberofArgs, char* pszArgs[])
{
// Введите температуру в градусах Цельсия
int nNCelsius;
cout << "Введите температуру по Цельсию: ";
cin >> nNCelsius;
// для приведенной формулы преобразования
//вычислим преобразующий множитель
int nNFactor;
nNFactor = 212 - 32;
// используем вычисленный множитель для
// преобразования градусов Цельсия в
// градусы Фаренгейта
int nFahrenheit;
nFahrenheit = nNFactor * nNCelsius/100 + 32;

Последний раз редактировалось Stilet; 18.06.2015 в 18:39.
umirotvorennii вне форума Ответить с цитированием
Старый 18.06.2015, 16:28   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

Я здесь только main() функцию вижу - вы про нее?
waleri вне форума Ответить с цитированием
Старый 18.06.2015, 18:26   #3
umirotvorennii
Пользователь
 
Регистрация: 15.02.2015
Сообщений: 16
По умолчанию

да я про нее, она имеет какую-то странную форму. Что она делает? Просто не понимаю, в учебнике объяснения нет.

(int nNumberofArgs, char* pszArgs[]) почему она выглядит так и почему не вызывается в сегменте программы? как я знаю инт и чар это операторы объявления переменных, но данные переменные (nNumberofArgs и pszArgs[] ) тоже не используются в данном сегменте

Последний раз редактировалось Stilet; 18.06.2015 в 18:39.
umirotvorennii вне форума Ответить с цитированием
Старый 18.06.2015, 18:52   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
почему она выглядит так
Вполне себе нормальная форма, Два параметра: Кол-во параметров, и их массив.
Цитата:
почему не вызывается в сегменте программы
main() в программе не вызывают. Это главная функция. Ее "вызывает" ОС самостоятльно.
Цитата:
данные переменные (nNumberofArgs и pszArgs[] ) тоже не используются в данном сегменте
Ну и что? Никто не заставляет тебя использовать их.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.06.2015, 21:12   #5
umirotvorennii
Пользователь
 
Регистрация: 15.02.2015
Сообщений: 16
По умолчанию

Окей, спасибо. Но тогда непонятно зачем переменные объявлять если они не используются, помоему это просто мусор. И еще вопрос, почему с этой функцией программа работает только до первого cin(и завершается с кодом 0х0 т.е без ошибок) а если эту функцию заменить на void main (void) и убрать return то она работает нормально и полностью. Там есть еще часть с выводом результата, но её я упустид (cout<<nFahrenheit)

И вопрос по поводу командной строки обязательно ли в проге прописывать system("pause")? Чтоб cmd была видна на рабочем столе

Последний раз редактировалось Stilet; 18.06.2015 в 21:25.
umirotvorennii вне форума Ответить с цитированием
Старый 18.06.2015, 21:25   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
зачем переменные объявлять если они не используются
Потому что компилятор так заявляет по умолчанию передачу параметров. Не хочешь - не пиши, но предупреди компилятор о том, что главная функция не будет принимать параметры. Вот Микрософтовский компилятор (https://msdn.microsoft.com/ru-ru/library/6wd819wh.aspx) судя по всему позволяет "перегрузить" main, как остальные компеиляторы не знаю, но вполне допускаю, что некоторые из них придется уговаривать. Могу ошибаться.
Цитата:
обязательно ли в проге прописывать system("pause")? Чтоб cmd была видна на рабочем столе
А можно узнать, что за зверь надоумил тебя на постановку таких вопросов?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.06.2015, 13:40   #7
umirotvorennii
Пользователь
 
Регистрация: 15.02.2015
Сообщений: 16
По умолчанию

Сам придумал. Просто когда пишешь прогу она открывается в cmd(только началь учиться поэтому пока только так) она доходит до последнего оператора и удачно завершается с кодом 0х0, а когда system("pause") поставишь еще висит с выведенными результатами

stilet ты самоучка или где-то учился?

Последний раз редактировалось Stilet; 19.06.2015 в 14:20.
umirotvorennii вне форума Ответить с цитированием
Старый 19.06.2015, 14:25   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
Сам придумал
Сам себя накрутил, сам себя же и обегорил )))
system() это передача строки командному интерпретатору ОС. pause - это команда, что передается интерпретатору. Она отвечает за прерывание выполнения программы в консоли, пока юзер не жмакнет энтер. Сопровождается выводом некоего сообщения. То же самое можно достичь другими способами типа getchar(), cin.get()...
Ставится студентами в конце программы, дабы доказать преподавателю что программа что-то всетки делает, кроме того что просто запускается.
Цитата:
ты самоучка или где-то учился?
3 Школы, колледж, академия. Я самоучка.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.06.2015, 15:41   #9
umirotvorennii
Пользователь
 
Регистрация: 15.02.2015
Сообщений: 16
По умолчанию

Цитата:
3 Школы, колледж, академия. Я самоучка.
И где же работает самоучка? Просто любопытство, связал свою жизнь с программированием?

Последний раз редактировалось umirotvorennii; 19.06.2015 в 15:55.
umirotvorennii вне форума Ответить с цитированием
Старый 19.06.2015, 19:51   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
где же работает самоучка?
На почте.
Цитата:
связал свою жизнь с программированием?
Да. Вполне )
Пан доволен )))
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что делает функция Terikon JavaScript, Ajax 1 01.05.2015 01:41
Что вернет функция? Max11111 Общие вопросы C/C++ 17 23.12.2012 16:10
Что за функция. Predator199 PHP 6 22.10.2012 18:40
Что за функция? X_RaY Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 11.09.2011 16:55
Что за функция TimeGetTime??? dolphin705 Общие вопросы Delphi 3 25.01.2010 19:14