Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > На чем учиться программировать?


Автор: CTPAHHNK 20.9.2008, 19:20
Всем доброго времени суток! Я решил податься в С++ программисты, но так я новичок в этом деле возник вопрос следующего характера - какая среда разработки под Windows подойдет в моей ситуации. Я имею ввиду среду разработки (как консольных приложений, так и GUI)+компилятор в одном программном решении.  

Автор: Gluttton 20.9.2008, 20:41
На Buidler'e, на мой взгляд, легче всего создавать "Hello, world!". Но! (если мы говорим о программировании под Windows) существует расхожее мнение, что лучше (эффективнее, надёжнее, професиональнее и т.д.) писать программы для ОС разработаной MicroSoft при помощи компилятора разработаного этой же компанией (т.е. MS Visual C++), а не сторонними разработчиками (т.е. Builder C++). Насколько это справедливо сказать сложно и я не берусь этого делать... 
Лично мне Builder намного легче дался в свое время, чем Visual Studio, который я сейчас осваиваю... И в заключении. Для настоящего программиста smile среда разработки - это не главное, главное - это трёрдые и глубокие знания непосредственно С++ (которые лучше всего добывать на практике)!

Автор: Lazin 20.9.2008, 20:56
текстовый редактор + командная строка и вперед

Автор: Med 20.9.2008, 21:47
Цитата(Lazin @ 20.9.2008,  20:56)
текстовый редактор + командная строка и вперед

а компилятор - Блокнот? smile 

Автор: IKM2007 20.9.2008, 22:12
Цитата(Med @  20.9.2008,  21:47 Найти цитируемый пост)
а компилятор - Блокнот?

Компилятор-командная строка.

Цитата(CTPAHHNK @  20.9.2008,  19:20 Найти цитируемый пост)
 Я решил податься в С++ программисты, но так я новичок в этом деле возник вопрос следующего характера - какая среда разработки под Windows подойдет в моей ситуации. Я имею ввиду среду разработки (как консольных приложений, так и GUI)+компилятор в одном программном решении.  

Я лично начал на Visual Studio 6.0, сейчас пишу на Visual Studio 2005 Express.Доволен. smile 

Автор: CTPAHHNK 20.9.2008, 23:11
Спасибо за советы, я наверно воспользуюсь MS Visual Studio.NET 2003
И дай Бог мне ума разобраться с этим всем.

Автор: Gluttton 20.9.2008, 23:33
Цитата

И дай Бог мне ума разобраться с этим всем.


Не стоит всё так драматизировать smile.

И как говориться "на Бога надейся, а сам не плошай"... Крайне рекомендую обзавестись книгой из разряда "Библия по...". Иначе кина не будет - на интуиции далеко не уедешь smile.

Автор: CTPAHHNK 21.9.2008, 14:18
Да книжка есть, даже 2:
1. Объектно-ориентированное программирование в С++ Р.Лафоре
2. Основы Microsoft Visual Studio.NET 2003
и сегодня скачал одну интересную на мой взгляд книжку - Внутренее устройство WinXP, Win2000, WinServer 2003

Автор: Gluttton 21.9.2008, 14:27
Цитата

и сегодня скачал одну интересную на мой взгляд книжку - Внутренее устройство WinXP, Win2000, WinServer 2003


Это дело вкуса, но я с монитора читать не могу... И уверен (мнение субъективное прим. авт.) что более эфективнее (и к сожалению дороже) изучать материал с "мёртвого дерева", чем с монитора.

Автор: IKM2007 21.9.2008, 14:33
Цитата(CTPAHHNK @  21.9.2008,  14:18 Найти цитируемый пост)
Да книжка есть, даже 2:1. Объектно-ориентированное программирование в С++ Р.Лафоре

Изучи базовые знания, потом объектно-ориентированное программирование. Для начала рекамендую Дейтела.

Автор: Acer 21.9.2008, 14:46
Страуструп + MinGW + Eclipse  smile 

Автор: MudriGoga 21.9.2008, 18:40
На мой взгляд лутше учиться работать сразу на том на чём почти весь мир работает. На мой взгляд самая  полноценная среда разроботки это Visual Studio 2008. Мы сейчас на фирме разрабатываем очень большой проект. Легко разбираться с большим кодом. Классый Debugger. Множно смотерть Stack функций и.т.д. Я очень им доволен.

Автор: Gluttton 21.9.2008, 19:41
To MudriGoga

Так может быть Вы и мне поможите? smile

http://forum.vingrad.ru/forum/topic-226226/kw-access-c++-2008.html

Автор: Med 22.9.2008, 01:23
Цитата(IKM2007 @ 20.9.2008,  22:12)
Компилятор-командная строка.

это как?

Автор: bsa 22.9.2008, 07:53
Цитата(Med @ 22.9.2008,  01:23)
Цитата(IKM2007 @ 20.9.2008,  22:12)
Компилятор-командная строка.

это как?

Вообще-то, если ты не знал, все компиляторы консольные (или существуют их консольные версии). Например, компилятор в MS Visual Studio зовется cl.exe, mingw - gcc/g++, BCB - bcc, intel - icc... Чтобы что-то скомпилоровать надо дать команду:
Код
<compiler> [options] -o <result file name> source.cpp [source2.cpp ...]
Например:
Код
g++ -o myprog.exe myprog.cpp
Поэтому, никто не мешает написать программу в блокноте и скомпилировать в консоли. Лишь бы компилятор был установлен.

Автор: SABROG 22.9.2008, 13:17
Цитата(MudriGoga @  21.9.2008,  18:40 Найти цитируемый пост)
На мой взгляд лутше учиться работать сразу на том на чём почти весь мир работает. 


Не хочу начинать холивар или показаться банальным, но действительно: "не все полезно, что в рот полезло".
Если Microsoft и приучила весь мир сидеть на windows и их продуктах, то это не значит, что это единственно правильный выбор.

Например ты никак не сможешь помочь сделать продукты Microsoft лучше - создавая патчи. Максимум что ты можешь делать - ждать. Все что есть для продуктов microsoft это кряки, хаки и иногда плагины, которые тебя ограничивают в рамках дозволенного дядями.

Большинство коммерческих программ пишут на вижуале не потому, что это хороший продукт. Скорее это похоже на выбор людей, которые выбирают готовые решения типа "движок для сайта", "all in one", "максимальная совместимость с продуктами microsoft". В общем люди, которые хотят заработать денег пишут программы под платформу, которая зарабатывает деньги.

Может и не удачное сравнение, но компилятор Microsoft это московский батон нарезного хлеба, который покупается за минуту, съедается и забывается. А следующий батон точно такой же, ничем не отличается от предыдущего.

Совсем другое дело gcc. Это деревенский хлеб, который готовится дольше, но он и вкуснее (программа соберется не только на винде, но и на любой *nix подобной ОС). А в наше время активного развития устройств на различных вариациях аппаратных платформ, выбор кроссплатформенного компилятора единственно верный выбор.
Microsoft со своим .NET - обогнали из SUN со своей Java'ой. Но из-за того, что Java несколько тормозная штука и исходники небыли доступны изначально народ сделал вывод, что детище сие не народное, а фирменное-коммерческое, а что не народное - зло. Да и за любой программой написанной на Java надо таскать виртуальную машину, которую не везде пихают.

Автор: Med 22.9.2008, 13:44
Цитата(bsa @ 22.9.2008,  07:53)
Цитата(Med @ 22.9.2008,  01:23)
Цитата(IKM2007 @ 20.9.2008,  22:12)
Компилятор-командная строка.

это как?

Вообще-то, если ты не знал, все компиляторы консольные (или существуют их консольные версии). Например, компилятор в MS Visual Studio зовется cl.exe, mingw - gcc/g++, BCB - bcc, intel - icc... Чтобы что-то скомпилоровать надо дать команду:
Код
<compiler> [options] -o <result file name> source.cpp [source2.cpp ...]
Например:
Код
g++ -o myprog.exe myprog.cpp
Поэтому, никто не мешает написать программу в блокноте и скомпилировать в консоли. Лишь бы компилятор был установлен.

g++ -o myprog.exe myprog.cpp
"g++" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

Автор: SABROG 22.9.2008, 14:13
Консоль MinGW работает по тому же принципу, что и консоль MS Visual Studio (command prompt).
Т.е. надо правильно настроить переменные окружения. Если MinGw установлен в C:\Mingw\Bin, то надо прописывать так:

Код

set PATH=%PATH%;C:\MinGW\bin


(запихнуть можно в Win+Break->Дополнительно->Переменные среды, только надо будет добавить к строке Path или создать .bat файл, куда это прописать)
В общем на эту тему в интернете статей дофига и больше.

Автор: Med 22.9.2008, 16:30
не понял, так что надо сделать что б скомпилировать программу в консоли

Автор: bsa 22.9.2008, 20:23
Цитата(Med @ 22.9.2008,  16:30)
не понял, так что надо сделать что б скомпилировать программу в консоли

1. Надо установить компилятор (mingw, icc, и т.п.)
2. Прописать путь до него в переменную PATH (как - было написано выше)
3. Запустить консоль и выполнить указанные команды, только вместо g++ нужно подставить название компилятора (gcc, g++, icc, cl, ...)

Автор: CTPAHHNK 22.9.2008, 20:36
Цитата(IKM2007 @  21.9.2008,  14:33 Найти цитируемый пост)
Дейтела

А не могли бы Вы написать название книги или книга этого автора единственная, в чем я сомневаюсь? 

Автор: IKM2007 22.9.2008, 20:52
Цитата(CTPAHHNK @  22.9.2008,  20:36 Найти цитируемый пост)
А не могли бы Вы написать название книги или книга этого автора единственная, в чем я сомневаюсь? 

"Как программировать на C++" Х.М.Дейтел П.Дж.Дейтел

Автор: Annihilator 22.9.2008, 21:14
Цитата(CTPAHHNK @  23.9.2008,  00:36 Найти цитируемый пост)
А не могли бы Вы написать название книги или книга этого автора единственная, в чем я сомневаюсь? 

Дейтел Х., Дейтел П. Как программировать на C++

Автор: Med 24.9.2008, 05:03
Цитата(bsa @ 22.9.2008,  20:23)
Цитата(Med @ 22.9.2008,  16:30)
не понял, так что надо сделать что б скомпилировать программу в консоли

1. Надо установить компилятор (mingw, icc, и т.п.)
2. Прописать путь до него в переменную PATH (как - было написано выше)
3. Запустить консоль и выполнить указанные команды, только вместо g++ нужно подставить название компилятора (gcc, g++, icc, cl, ...)

спасибо

Автор: CTPAHHNK 26.9.2008, 13:33
Всем привет! Я разобрался с книгами, компиляторами и редакторами, за что большое спасибо Вашим ответам, но теперь у меня появился ещё один вопрос по поводу Microsoft Visual Studio.NET 2003 - почему при создании вот такой простой программки как Hello World.cpp нужно предварительно проделать настройку студии как описано сдесь http://forum.vingrad.ru/forum/topic-205782/anchor-entry1475468/0.html 

А листинг программы взят из книжки C++ за 21 день:
Код

#include <iostream>
int main()
{
    cout << "Hello World!\n";
    return 0;
}


А это уже после редактирования в студии:
Код

#include "stdafx.h"
int main()
{
    std::cout << "Hello World!\n";
    return 0;
}


Почему такое расхождение????

Автор: bsa 26.9.2008, 14:29
CTPAHHNK, отключи в настройках проекта прекомпилированные заголовочные файлы.

Автор: CTPAHHNK 27.9.2008, 13:54
Я конечно извеняюсь за мою не опытность, но как это сделать? smile 

Автор: Djinn 27.9.2008, 15:34
при создание проекта или в свойствах проекта

Автор: CTPAHHNK 27.9.2008, 17:24
Хорошо, тогда вопрос такой - я вписал пример из книжки, а он не хочет проводить debug!!!! Что делать ?
Вот пример:
Код

// test.cpp : Defines the entry point for the console application.
//

#include <iostream>

int main()
{
    int x = 5;
    int y = 7;
    cout << "n\";
    cout << x + y << " " << x * y;
    cout << "n\";
    return 0
}

Автор: W4FhLF 27.9.2008, 17:33
Цитата(CTPAHHNK @  27.9.2008,  17:24 Найти цитируемый пост)
а он не хочет проводить debug!!!!


Какой ужас!!!!1 Что значит не хочет?!?!

Подозреваю, что тебе надо писать std::cout

Автор: IKM2007 27.9.2008, 20:36
Цитата(W4FhLF @  27.9.2008,  17:33 Найти цитируемый пост)
Подозреваю, что тебе надо писать std::cout


И еще вместо cout << "n\"; написать cout << "\n";.
Еще после return 0 поставить ;.

Автор: CTPAHHNK 28.9.2008, 13:17
Воф!!! Разобрался наконец я с этой студией. Всем отвечавшим на мои глу.... вопросы respect!!!!!  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)