Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.78/93: Рейтинг темы: голосов - 93, средняя оценка - 4.78
No10
30 / 28 / 4
Регистрация: 03.06.2010
Сообщений: 465
1

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

03.02.2012, 17:26. Просмотров 17180. Ответов 25
Метки нет (Все метки)

Решил заняться программированием на 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. Для чего это нужно?
Ещё раз попрошу пожалуйста скажите какие учебники почитать? Какие мне подойдут?
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.02.2012, 17:26
Ответы с готовыми решениями:

Начало программирования
Подскажите книжку для начала программирования на c++, а то я не уверен что...

Начало программирования на C++
Всем доброго времени суток. Сразу прошу прощения за тавтологию, знаю, что...

Начало изучения программирования на C++
Расскажите, как вы учились писать на C++, какую литературу использовали, с...

Как называется движение программирования или теория программы считывающая др. язык программирования
Не знал, как по другому задать вопрос, и также назвать тему, но буду краток: ...

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

25
ШКІПЕР
95 / 95 / 22
Регистрация: 14.04.2010
Сообщений: 280
Записей в блоге: 9
Завершенные тесты: 1
03.02.2012, 17:34 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 Посмотреть сообщение
Ещё раз попрошу пожалуйста скажите какие учебники почитать? Какие мне подойдут?
Начинайте с чего-то проще, как Страустрап и Ричи.
1
silent_1991
Эксперт С++
5009 / 3069 / 270
Регистрация: 11.11.2009
Сообщений: 7,043
Завершенные тесты: 1
03.02.2012, 17:38 3
Цитата Сообщение от ШКІПЕР Посмотреть сообщение
Страустрап
Ну точно!

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

Добавлено через 1 минуту
No10, Дейтелы отлично подойдут для новичков. Ваша проблема в среде разработки. Скачайте лучше кодблокс.
1
Nameless One
Эксперт С++
5786 / 3435 / 351
Регистрация: 08.02.2010
Сообщений: 7,448
03.02.2012, 17:51 4
Цитата Сообщение от No10 Посмотреть сообщение
Ещё раз попрошу пожалуйста скажите какие учебники почитать? Какие мне подойдут?
Литература C++
0
2e1553ce
1 / 1 / 2
Регистрация: 16.12.2011
Сообщений: 47
03.02.2012, 18:20 5
Очень хорошая и легко читаемая книга для начинающего -
Роберт Лафоре.Объектно-ориентировочное программирование вС++.
1
ViNew
45 / 34 / 5
Регистрация: 16.07.2011
Сообщений: 73
03.02.2012, 19:40 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, Советую почитать книгу С++ Базовый курс автор Герберт Шилдт
у него в книгах минимум ошибок и все объясняет как новичку хотя пишет книги для профессионалов!
Сам учусь по ней с удовольствием!
4
No10
30 / 28 / 4
Регистрация: 03.06.2010
Сообщений: 465
03.02.2012, 20:10  [ТС] 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)
{
}
//---------------------------------------------------------------------------
0
silent_1991
Эксперт С++
5009 / 3069 / 270
Регистрация: 11.11.2009
Сообщений: 7,043
Завершенные тесты: 1
03.02.2012, 20:10 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/8a2760bca1b76b261c6de607c13e6fb8
0
No10
30 / 28 / 4
Регистрация: 03.06.2010
Сообщений: 465
03.02.2012, 20:10  [ТС] 9
пожалуйста скажите как научиться C++?
0
silent_1991
Эксперт С++
5009 / 3069 / 270
Регистрация: 11.11.2009
Сообщений: 7,043
Завершенные тесты: 1
03.02.2012, 20:11 10
Лучший ответ Сообщение было отмечено как решение

Решение

No10, вам нужно создавать консольное приложение, а не оконное. Я не работал в борланде, поэтому говорю на основе опыта работы с другими IDE. А вообще, я уже писал, начните с чего-нибудь попроще, например, с Code::Blocks.

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

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

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

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

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

Взялся было объяснять "Hello, word" на C++, но поймал себя на мысли что не могу. А объяснить на С запроса не было...
0
No10
30 / 28 / 4
Регистрация: 03.06.2010
Сообщений: 465
04.02.2012, 08:16  [ТС] 12
тоесть если я буду работать в сторонней среде разработки C++(ну тоесть не Microsoft Visual C++ или борланд), то я не смогу работать с графикой ни векторной ни трехмерной, ни с библиотеками OpenGL, я не смогу создавать красивые приложения для виндовс, не смогу работать с формами? А буду писать обычные математические задачки в консоле? Типо как на паскале АБЦ.
0
silent_1991
Эксперт С++
5009 / 3069 / 270
Регистрация: 11.11.2009
Сообщений: 7,043
Завершенные тесты: 1
04.02.2012, 08:27 13
Цитата Сообщение от No10 Посмотреть сообщение
сторонней среде разработки C++
Сторонней по отношению к чему? С++ не привязан ни к какой среде разработки и изначально не содержит никаких возможностей для работы с графикой. Всё, что предоставляют среды разработки (средства визуальной разработки) - обёртка над WinAPI (ну или другим системным API, в зависимости от ОС). Вы можете с тем же успехом писать на WinAPI в текстовом редакторе "Блокнот" и компилировать код в консоли. Но среды разработки предоставляют средства автоматической генерации такого кода - визуальные редакторы форм.
1
No10
30 / 28 / 4
Регистрация: 03.06.2010
Сообщений: 465
04.02.2012, 09:38  [ТС] 14
silent_1991, да это верно. Но я хочу именно научиться визуальному программирования в средах Борланда или Майкрасофт. Вот допустим в Вorland Delphi 7 открыл и написал за неделю прекрасную программу, и не нужно знать ни WinAPI потому что это очень длинно писать, только сам делфи. Так же и с различными библиотеками будь то GDI Или Direct3d, залил её, модуль присоединил и пошел работать. А как понять c++ я просто не представляю, это нужно или мозг иметь повернутый в другую сторону или учить его стоя на голове. Не знаю. Я писал все на делфи, но мне реально нужно уменьшать вес приложений, вот я и пришел к выводу учить c++. Но пока как пишут в самоучителях что у него очень обширные возможности, пока этого не увидел. Выучить его очень бы хотелось, но как учить если я вообще не пойму как он вообще работает. Саму систематику не пойму. Хотя прочитал книг 10 до первого примера, и этот пример ни где не работает. Я бы зубрил все эти функции днями и ночами,писал программы, но где они? Что учить? Что писать если ничего не работает и никто не может толком обьяснить как это все устроено. Например где находятся переменные? Как их обьявить? Какие есть модули и как их подключить? Как обьявлять константы? Ни в одном самоучителе я этого не увидел.
0
Chelioss
181 / 181 / 21
Регистрация: 08.01.2011
Сообщений: 1,139
04.02.2012, 09:39 15
Вам надо читать 5ое издание Дейтелов( все там нормально объясняется и все работает) и писать код в совеременных компиляторах, таких как Microsoft Visual Studio 2008/2010, ggc.
0
silent_1991
Эксперт С++
5009 / 3069 / 270
Регистрация: 11.11.2009
Сообщений: 7,043
Завершенные тесты: 1
04.02.2012, 10:00 16
Цитата Сообщение от No10 Посмотреть сообщение
Ни в одном самоучителе я этого не увидел.
Конечно, раз вы дальше первого примера не доходили. Нигде не видел хеллоуворлд, в котором использовались бы функции, переменный и вообще что-то сложнее вывода на консоль. Ваша проблема, как я говорю уже в третий (!) раз - устаревшая среда разработки. Выше я выложил код, который компилируется любым более-менее современным компилятором. И советую вам учить язык не на борланде или вижуал студии, а на чём-нибудь полегче. На чём именно, я также говорил уже не раз в этой теме. Вы всё равно не сможете сразу начать шлёпать формочки, для этого надо выучить сам язык. А уж выучив язык, вы сможете подстроиться под конкретный фрэймвёрк (будь то борланд, майкрософт или кьют).
1
ValeryLaptev
Эксперт С++
1050 / 829 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
04.02.2012, 11:45 17
Добавлю свои три копейки.
1. Язык С++
2. Компилятор - g++ в minGW
3. Qt+QtCreator - и будет тебе счастье с окошками.
0
ViNew
45 / 34 / 5
Регистрация: 16.07.2011
Сообщений: 73
04.02.2012, 12:40 18
No10, Первое правило - никогда не торопись узнать все и сразу! эта ошибка многих начинающих программистов.
Второе правило-Повторяй полностью весь пример программы за автором книги по которой учишься,до тех пор пока не получишь результата о котором говорит автор.Если результата нет, а автор утверждает что он должен быть! скорее всего ты выбрал книгу с опечатками -срочно поменяй книгу.
Некоторые авторы считают не нужным говорить и описывать все моменты описания кода программы, что новичков приводит в тупик, так они не понимают куда что писать!Но спешу тебя обрадовать многие авторы книг описывают язык программирования как младенцу и что либо не понять просто не возможно.
Например ты начал читать книгу и понимаешь, что на самом деле ничего не понимаешь! ищи другую книгу, которую начав читать ты сразу начнешь вникать в смысл этой книги.Прочитав эту книгу ты с легкостью поймешь все другие книги которые не понимал до этого.
1
kravam
быдлокодер
1709 / 896 / 105
Регистрация: 04.06.2008
Сообщений: 5,531
04.02.2012, 12:49 19
Цитата Сообщение от No10 Посмотреть сообщение
тоесть если я буду работать в сторонней среде разработки C++(ну тоесть не Microsoft Visual C++ или борланд), то я не смогу работать с графикой ни векторной ни трехмерной, ни с библиотеками OpenGL, я не смогу создавать красивые приложения для виндовс, не смогу работать с формами? А буду писать обычные математические задачки в консоле? Типо как на паскале АБЦ.
С чего ты взял? Тем более странно писать такие сообщения после моих, ну может я что не так написал, не знаю. Но до OpenGL ещё надо дорасти. Твоё желание кропать графику понятно, но забудь о нём до поры до времени. Короче, всё верно тебе сказали. Всё, хватит вопросов. Кодить, кодить и ещё раз кодить. При возникновении ошибок писать сюда только в КРАЙНЕМ случае. Любое диагностическое сообщение компилятора набирать в гугле! Коды набирать ОТ РУКИ!
1
Electroflower
Shiningemerald
375 / 108 / 22
Регистрация: 05.01.2012
Сообщений: 667
Записей в блоге: 1
24.06.2012, 16:55 20
Цитата Сообщение от No10 Посмотреть сообщение
пожалуйста скажите как научиться C++?
напишите курсовую работу=)
я более менее в С++ разбираться стала после написания курсовой, днями и ночами! во всем главное усердие: сидеть и долбить)
1
24.06.2012, 16:55
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.06.2012, 16:55

Все положительные элементы поместить в начало массива В(n), а отрицательные элементы — в начало массива С(n)
Ребята. Помогите с задачей пожалуйста. Дан массив А(n). Все положительные...

Начало Си++
Я понимаю что данные задачи очень просты, но помогите пожалуйста...Я просто...

Начало
Здравствуйте я начинающий IT работник и мне нужна помощь тех кто давно в этой...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru