Форум программистов, компьютерный форум CyberForum.ru

Начало программирования на C++ - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 113, средняя оценка - 4.72
No10
 Аватар для No10
30 / 28 / 2
Регистрация: 03.06.2010
Сообщений: 465
03.02.2012, 17:26     Начало программирования на C++ #1
Решил заняться программированием на C++. Скачал учебник Харви Дейтел, Пол Дейтел "Как программировать на C++". Начало отличное. Всё обьясняет как, да что.
У меня Borland C++ 6. Программа вроде нормально запустилась на Win7. Дошёл до первой практики.
Как создать точно не знал. Стёр код который был уже написан и вписал свой. Компилятор ругался на TForm и ещё что то там. Понял что форма не описана. Создал новый Console Wizard. Глянул вроде форм нет. Снова снёс весь код и вписал в свой. И чёрт бы их побрал.
Первый код:
C++
1
2
3
4
5
6
7
8
//Первая программа на C++
#include <iostream.h>
 
main ()
{
        cout <<"Добро пожаловать в C++!\n" ;
        recount 0; // показывает что программа успешно закончена.
}
cout не работает, говорит что ошибка сдесь. recount 0; неопознанное значение. Зашибись! Посоветуйте нормальный учебник рассчитанный на новичков. На реальных новичков!
Пожалуйста обьясните что такое #include <vcl.h> и зачем нужно.
И ещё обьясните #pragma hdrstop и #pragma argsused. Для чего это нужно?
Ещё раз попрошу пожалуйста скажите какие учебники почитать? Какие мне подойдут?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ШКІПЕР
 Аватар для ШКІПЕР
93 / 93 / 7
Регистрация: 14.04.2010
Сообщений: 280
Записей в блоге: 9
Завершенные тесты: 1
03.02.2012, 17:34     Начало программирования на C++ #2
Цитата Сообщение от No10 Посмотреть сообщение
Как создать точно не знал.
Создавайте пустой проект, а лучше всего консольный.


Цитата Сообщение от No10 Посмотреть сообщение
Первый код:
C++
1
2
3
4
5
6
7
8
//Первая программа на C++  - и похоже лучше ее компилить под Turbo C++ (уже не помню где еще этот компилятор есть)
#include <iostream.h> //Этого стандарта уже нет.
 
int /*и что же должна возвращать функция ?*/main ()
{
        /*std::*/cout <<"Добро пожаловать в C++!\n" ;
        /*recount 0;*/return 0; // показывает что программа успешно закончена.
}

Цитата Сообщение от No10 Посмотреть сообщение
Ещё раз попрошу пожалуйста скажите какие учебники почитать? Какие мне подойдут?
Начинайте с чего-то проще, как Страустрап и Ричи.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
03.02.2012, 17:38     Начало программирования на C++ #3
Цитата Сообщение от ШКІПЕР Посмотреть сообщение
Страустрап
Ну точно!

Цитата Сообщение от ШКІПЕР Посмотреть сообщение
Ричи
А причём здесь С++?

Добавлено через 1 минуту
No10, Дейтелы отлично подойдут для новичков. Ваша проблема в среде разработки. Скачайте лучше кодблокс.
Nameless One
Эксперт С++
 Аватар для Nameless One
5755 / 3404 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
03.02.2012, 17:51     Начало программирования на C++ #4
Цитата Сообщение от No10 Посмотреть сообщение
Ещё раз попрошу пожалуйста скажите какие учебники почитать? Какие мне подойдут?
Литература C++
2e1553ce
1 / 1 / 1
Регистрация: 16.12.2011
Сообщений: 47
03.02.2012, 18:20     Начало программирования на C++ #5
Очень хорошая и легко читаемая книга для начинающего -
Роберт Лафоре.Объектно-ориентировочное программирование вС++.
ViNew
 Аватар для ViNew
40 / 29 / 3
Регистрация: 16.07.2011
Сообщений: 73
03.02.2012, 19:40     Начало программирования на C++ #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
No10, 1)#include - это директива препроцессора которая подключает заголовочные файлы с расширением .h Для того чтобы мы могли использовать код написанный в других модулях мы должны сначала подключить этот модуль директивой #include а справа указать имя модуля который хотим подключить если мы напишем так #include <vcl.h> то мы сообщаем препроцессору что подключаемый файл нужно искать во всех папках отведенных для хранения файлов с расширением .h если же напишем так - #include "vcl.h" то препроцессор будет искать наш файл сначала в текущем каталоге, а затем если он не найдет файл будет выполнять все действия как если бы мы написали так #include <vcl.h>,Директива # include заменяется препроцессором на содержимое указанного в ней файла. Обычно это заголовочные файлы с расширением .h.
2)#pragma hdrstop - #pragma-это директива препроцессора в ней
использована опция hdrstop. Она связана с особенностью работы препроцессора, производительность которого существенно повышается, если учитывается, что некоторое количество заголовочных файлов общие для всех модулей. Директива #pragma hdrstop указывает компилятору конец списка таких общих файлов. Так что надо следить за тем, чтобы не добавлять перед этой директивой включение каких-то заголовочных файлов, не являющихся общими для других модулей.
3)#pragma argsused ,#pragma-это директива препроцессора в ней
Например, #pragma argsused говорит компилятору, что следует подавить выдачу предупреждающего сообщения о том, что параметры функции main () никак в ней не используются.
Вообще это дебри и тебе сейчас их знать ни к чему со временем все узнаешь!

Добавлено через 9 минут
No10, Советую почитать книгу С++ Базовый курс автор Герберт Шилдт
у него в книгах минимум ошибок и все объясняет как новичку хотя пишет книги для профессионалов!
Сам учусь по ней с удовольствием!
No10
 Аватар для No10
30 / 28 / 2
Регистрация: 03.06.2010
Сообщений: 465
03.02.2012, 20:10  [ТС]     Начало программирования на C++ #7
ааа скачал Страустрап Б. Блин начинаю делать первый пример:
C++
1
2
3
4
5
#include
main()
{
        coun << "Hello, world!!!\n";
}
Чёрт говорит в #include ошибка! А Страустрап говорит что это скажет компилятору, что бы он включил стандартные возможности вводы/вывода. Блин что за чёрт не могу написать Hello,world! Скачал потом Роберт Лафоре.Объектно-ориентировочное программирование вС++.
Прочитал начало первый пример опять начинается с #include <iostream.h>. Блин и опять ничего не пашет! Потому что это устрело.

Добавлено через 2 минуты
начальный код в моём C++ Borlande выглядит так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
 
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
03.02.2012, 20:10     Начало программирования на C++ #8
No10, вот такой код удовлетворяет последнему стандарту:
C++
1
2
3
4
5
6
7
8
#include <iostream>
 
int main()
{
    std::cout << "Hello, World!" << std::endl;
    
    return 0;
}
http://liveworkspace.org/code/8a2760...6de607c13e6fb8
No10
 Аватар для No10
30 / 28 / 2
Регистрация: 03.06.2010
Сообщений: 465
03.02.2012, 20:10  [ТС]     Начало программирования на C++ #9
пожалуйста скажите как научиться C++?
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
03.02.2012, 20:11     Начало программирования на C++ #10
Сообщение было отмечено автором темы, экспертом или модератором как ответ
No10, вам нужно создавать консольное приложение, а не оконное. Я не работал в борланде, поэтому говорю на основе опыта работы с другими IDE. А вообще, я уже писал, начните с чего-нибудь попроще, например, с Code::Blocks.

Добавлено через 34 секунды
Цитата Сообщение от No10 Посмотреть сообщение
пожалуйста скажите как научиться C++?
Как завещал Ленин.
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,271
03.02.2012, 21:57     Начало программирования на C++ #11
Нужно собраться с мыслями. Не ты первый, не ты последний, кто на этом застревал

Будь готов к тому, что ты найдёшь распрекрасную книгу и распрекрасную среду и примеры из первой не будут компиляться во второй. Ничего не попишешь Поэтому чисто и честно ищешь менее прекрасную книгу или менее прекрасную среду, главное чтобы примеры компилились

Будь готов, что одной книгой не обойтись. Две-три для начала.

Если будешь упорно заниматься, то со временем после нескольких лёгких пассов руками ты сможешь быстренько-быстренько передалеть код, заточенный под Борланд, к примеру под другую среду. Но это со временем.

От себя советую Dev-Cpp. Маленькая русскоязычная. Недавно обновился компилятор- вот уж не ожидал. Начинай с просто примера.

Взялся было объяснять "Hello, word" на C++, но поймал себя на мысли что не могу. А объяснить на С запроса не было...
No10
 Аватар для No10
30 / 28 / 2
Регистрация: 03.06.2010
Сообщений: 465
04.02.2012, 08:16  [ТС]     Начало программирования на C++ #12
тоесть если я буду работать в сторонней среде разработки C++(ну тоесть не Microsoft Visual C++ или борланд), то я не смогу работать с графикой ни векторной ни трехмерной, ни с библиотеками OpenGL, я не смогу создавать красивые приложения для виндовс, не смогу работать с формами? А буду писать обычные математические задачки в консоле? Типо как на паскале АБЦ.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
04.02.2012, 08:27     Начало программирования на C++ #13
Цитата Сообщение от No10 Посмотреть сообщение
сторонней среде разработки C++
Сторонней по отношению к чему? С++ не привязан ни к какой среде разработки и изначально не содержит никаких возможностей для работы с графикой. Всё, что предоставляют среды разработки (средства визуальной разработки) - обёртка над WinAPI (ну или другим системным API, в зависимости от ОС). Вы можете с тем же успехом писать на WinAPI в текстовом редакторе "Блокнот" и компилировать код в консоли. Но среды разработки предоставляют средства автоматической генерации такого кода - визуальные редакторы форм.
No10
 Аватар для No10
30 / 28 / 2
Регистрация: 03.06.2010
Сообщений: 465
04.02.2012, 09:38  [ТС]     Начало программирования на C++ #14
silent_1991, да это верно. Но я хочу именно научиться визуальному программирования в средах Борланда или Майкрасофт. Вот допустим в Вorland Delphi 7 открыл и написал за неделю прекрасную программу, и не нужно знать ни WinAPI потому что это очень длинно писать, только сам делфи. Так же и с различными библиотеками будь то GDI Или Direct3d, залил её, модуль присоединил и пошел работать. А как понять c++ я просто не представляю, это нужно или мозг иметь повернутый в другую сторону или учить его стоя на голове. Не знаю. Я писал все на делфи, но мне реально нужно уменьшать вес приложений, вот я и пришел к выводу учить c++. Но пока как пишут в самоучителях что у него очень обширные возможности, пока этого не увидел. Выучить его очень бы хотелось, но как учить если я вообще не пойму как он вообще работает. Саму систематику не пойму. Хотя прочитал книг 10 до первого примера, и этот пример ни где не работает. Я бы зубрил все эти функции днями и ночами,писал программы, но где они? Что учить? Что писать если ничего не работает и никто не может толком обьяснить как это все устроено. Например где находятся переменные? Как их обьявить? Какие есть модули и как их подключить? Как обьявлять константы? Ни в одном самоучителе я этого не увидел.
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
04.02.2012, 09:39     Начало программирования на C++ #15
Вам надо читать 5ое издание Дейтелов( все там нормально объясняется и все работает) и писать код в совеременных компиляторах, таких как Microsoft Visual Studio 2008/2010, ggc.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
04.02.2012, 10:00     Начало программирования на C++ #16
Цитата Сообщение от No10 Посмотреть сообщение
Ни в одном самоучителе я этого не увидел.
Конечно, раз вы дальше первого примера не доходили. Нигде не видел хеллоуворлд, в котором использовались бы функции, переменный и вообще что-то сложнее вывода на консоль. Ваша проблема, как я говорю уже в третий (!) раз - устаревшая среда разработки. Выше я выложил код, который компилируется любым более-менее современным компилятором. И советую вам учить язык не на борланде или вижуал студии, а на чём-нибудь полегче. На чём именно, я также говорил уже не раз в этой теме. Вы всё равно не сможете сразу начать шлёпать формочки, для этого надо выучить сам язык. А уж выучив язык, вы сможете подстроиться под конкретный фрэймвёрк (будь то борланд, майкрософт или кьют).
ValeryLaptev
Эксперт C++
1005 / 784 / 46
Регистрация: 30.04.2011
Сообщений: 1,595
04.02.2012, 11:45     Начало программирования на C++ #17
Добавлю свои три копейки.
1. Язык С++
2. Компилятор - g++ в minGW
3. Qt+QtCreator - и будет тебе счастье с окошками.
ViNew
 Аватар для ViNew
40 / 29 / 3
Регистрация: 16.07.2011
Сообщений: 73
04.02.2012, 12:40     Начало программирования на C++ #18
No10, Первое правило - никогда не торопись узнать все и сразу! эта ошибка многих начинающих программистов.
Второе правило-Повторяй полностью весь пример программы за автором книги по которой учишься,до тех пор пока не получишь результата о котором говорит автор.Если результата нет, а автор утверждает что он должен быть! скорее всего ты выбрал книгу с опечатками -срочно поменяй книгу.
Некоторые авторы считают не нужным говорить и описывать все моменты описания кода программы, что новичков приводит в тупик, так они не понимают куда что писать!Но спешу тебя обрадовать многие авторы книг описывают язык программирования как младенцу и что либо не понять просто не возможно.
Например ты начал читать книгу и понимаешь, что на самом деле ничего не понимаешь! ищи другую книгу, которую начав читать ты сразу начнешь вникать в смысл этой книги.Прочитав эту книгу ты с легкостью поймешь все другие книги которые не понимал до этого.
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,271
04.02.2012, 12:49     Начало программирования на C++ #19
Цитата Сообщение от No10 Посмотреть сообщение
тоесть если я буду работать в сторонней среде разработки C++(ну тоесть не Microsoft Visual C++ или борланд), то я не смогу работать с графикой ни векторной ни трехмерной, ни с библиотеками OpenGL, я не смогу создавать красивые приложения для виндовс, не смогу работать с формами? А буду писать обычные математические задачки в консоле? Типо как на паскале АБЦ.
С чего ты взял? Тем более странно писать такие сообщения после моих, ну может я что не так написал, не знаю. Но до OpenGL ещё надо дорасти. Твоё желание кропать графику понятно, но забудь о нём до поры до времени. Короче, всё верно тебе сказали. Всё, хватит вопросов. Кодить, кодить и ещё раз кодить. При возникновении ошибок писать сюда только в КРАЙНЕМ случае. Любое диагностическое сообщение компилятора набирать в гугле! Коды набирать ОТ РУКИ!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.06.2012, 16:55     Начало программирования на C++
Еще ссылки по теме:

C++ Начало работы в С++
C++ Начало
Данный массив A (n). Все положительные его элементы поместить в начало массива B (n), а все отрицательные - в начало массива C (n). Подсчитать количес C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Electroflower
Форумчанка
 Аватар для Electroflower
289 / 82 / 9
Регистрация: 05.01.2012
Сообщений: 425
Записей в блоге: 1
24.06.2012, 16:55     Начало программирования на C++ #20
Цитата Сообщение от No10 Посмотреть сообщение
пожалуйста скажите как научиться C++?
напишите курсовую работу=)
я более менее в С++ разбираться стала после написания курсовой, днями и ночами! во всем главное усердие: сидеть и долбить)
Yandex
Объявления
24.06.2012, 16:55     Начало программирования на C++
Ответ Создать тему
Опции темы

Текущее время: 21:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru