Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Начало С++  (Прочитано 20044 раз)
0 Пользователей и 1 Гость смотрят эту тему.
IgnisFatuus
Постоялец

ru
Offline Offline

« : 03-04-2012 07:33 » 

Обращаюсь к Вам за советом, надеюсь на понимание.
Суть в том, что я хочу начать изучение С++ с нуля. Скачал пару книг, по штудировал, но как только решился попробовать все это на практике - столкнулся с рядом трудностей:
1. С чего начать?
На сколько я понял - должна быть среда программирования  и компилятор.
2.Где их взять? Какие лучше? Был бы признателен если бы Вы дали прямые ссылки.
Сижу я сейчас на Windows 7 и второй системой стоит Ubuntu.
Какая среда и какой компилятор подходят для них?
Записан
darkelf
Молодой специалист

ua
Offline Offline

« Ответ #1 : 03-04-2012 07:54 » 

Для windows, наверное, луче взять Visual Studio которая сразу является и средой и компилятором, для linux - особо выбора нет - gcc, а среду - их много, посмотрите в сети, что Вам понравится. Тот-же Code:Blocks, как вариант. Посмотрите на страничке wikipedia для него - там будут ссылки на другие варианты, а так-же их особенности. Вообще разные версии Visual Studio и gcc поддерживают разные (и по разному) стандарт C++, так-что надо ещё смотреть, и если есть интерес писать переносимый код, то лучше, наверное, пользоваться gcc.
« Последнее редактирование: 03-04-2012 07:56 от darkelf » Записан
IgnisFatuus
Постоялец

ru
Offline Offline

« Ответ #2 : 03-04-2012 08:02 » 

А есть вменяемые (для моего уровня) руководства? На сколько я понимаю самое главное  - это язык. А среда - вторична. Есть ли мануалы "Для чайников", которые затрагивают изучение не только самого языка, но и Visual Studio? А то во многих мануалах сразу нечто - напише вот это"..."   .   А как ставить, как настроить и т.п. не объясняют... Я-то со временем разберусь, но жаль время терять.. И так учился не на то, работаю там, где не нравится и т.д....
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 03-04-2012 08:16 » 

Цитата: IgnisFatuus
Суть в том, что я хочу начать изучение С++ с нуля.
Нули бывают разные. Если ноль - это незнание C++ и похожих языков, то помогут руководства по средам разработки и справочники по языку. Если же ноль - это незнание и неумение программировать вообще, то вышеозначенная литература не поможет, нужны будут учебники по программированию.

Для второго случая в Ubuntu достаточно иметь установленный gcc, консоль и текстовый редактор. Со временем ещё make пригодится.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
IgnisFatuus
Постоялец

ru
Offline Offline

« Ответ #4 : 03-04-2012 10:23 » 

Вы правы, с программированием не знаком совсем... А какие учебники ( с упором  на С++) порекомендуете?
Записан
darkelf
Молодой специалист

ua
Offline Offline

« Ответ #5 : 03-04-2012 11:07 » 

если совсем начинающий уровень, то есть "Самоучитель C++" Герберта Шилдта (http://www.proklondike.com/books/cpp/shildt_samouchitel.html). Довольно просто и все азы вроде-бы рассмотрены, правда не до последних стандартов..
Записан
IgnisFatuus
Постоялец

ru
Offline Offline

« Ответ #6 : 03-04-2012 11:38 » 

Там ведь есть практические примеры и задания? Какие программы нужны будут для этого?
Записан
darkelf
Молодой специалист

ua
Offline Offline

« Ответ #7 : 03-04-2012 12:00 » 

К сожалению сейчас не помню, но вроде-бы были.. По большому счёту кроме компилятора и редактора текстовых файлов, как и сказал Dimka больше ничего не надо. Что в linux, что в window (правда в windows может понадобиться установ переменных окружения).
Записан
IgnisFatuus
Постоялец

ru
Offline Offline

« Ответ #8 : 03-04-2012 12:28 » 

Текстовый редактор - банальный блокнот, так? А компилятор? Ссылочку для Ubuntu можно (на сколько я понялтам с  этим проще будет?)
Записан
darkelf
Молодой специалист

ua
Offline Offline

« Ответ #9 : 03-04-2012 12:57 » 

в том числе хватит и блокнота, а вообще, есть тот-же mc (Midnight Commander), в составе которого есть простой редактор с подсветкой синтаксиса.
сорри, не пользуюсь Ubuntu, тем не менее скорее всего там есть штатный компилятор, gcc (GNU Compiler Collection), куда входит и g++ обеспечивающий компиляцию исходных текстов на C++.
а дальше - как обычно в консоли, в каталоге с файлом с исходными текстами, набрать:
Код:
g++ example.cpp -o example
example.cpp - файл с исходными текстами на C++
g++ - компилятор
-o example - результирующий файл назвать example, если опустить -o example, то в качестве результирующего файла будет создан файл a.out.
Если компиляция завершится нормально, то результат можно запустить на исполнение командой:
Код:
./example
« Последнее редактирование: 03-04-2012 12:59 от darkelf » Записан
IgnisFatuus
Постоялец

ru
Offline Offline

« Ответ #10 : 03-04-2012 13:51 » 

Самоучитель C++" Герберта Шилдта

Здесь сказано, что эта книга подходит для тех, кто знает "С"... Я к сожалению, как сказал раньше, не имею никакого опыта в программировании.

С++ для чайников подойдет? Или есть варианты лучше?

Добавлено через 4 минуты и 46 секунд:
При создании любой программы на C++ первым шагом становится введение ко-
манд языка с помощью текстового редактора. Сердцем пакета GNU C++ является
утилита rhide. Она представляет собой редактор, который связывает различные воз-
можности GNU C++ в единый интегрированный пакет. В этой главе rhide будет ис-
пользоваться для создания файла Convert. срр.
1. Откройте окно MS DOS двойным щелчком на пиктограмме MS DOS
в меню Windows Пуск1^Программы.
GNU C++ является утилитой, работающей из командной строки. Запус-
кать rhide вы всегда будете из системного приглашения MS DOS.
2. Создайте каталог С: \CPP_For_Dummies\Chap01 (подразумевается, что
рабочим диском является С).
Находясь в каталоге ChapOl, запустите rhide из приглашения MS DOS.
Создайте пустой файл, выбрав пункт New в меню File. Откроется пустое окно,
в котором необходимо ввести текст программы (причем он должен точно соответство-
вать книжному оригиналу).

Кто-то может на пальцах показать - откуда качать, как создавать и т.п.?
« Последнее редактирование: 03-04-2012 13:55 от IgnisFatuus » Записан
darkelf
Молодой специалист

ua
Offline Offline

« Ответ #11 : 03-04-2012 13:58 » new

Сорри, не читал, возможно. Как вариант, можно перед вначале почитать про C, благо книга маленькая и простая - Язык C Б.Кернигана и Д.Ричи.
Давайте попробуем так - у Вас сейчас linux под рукой? можете там войти в систему и запустить консольную программу (xterm или что-нибудь подобное?), а то в таком режиме мы будем общаться очень долго, а там есть шанс, что ничего качать и ставить не придётся. Кроме того, имхо, гораздо быстрей всё это дело будет обсуждать всё-таки не на форуме, а в icq/jabber-е.
« Последнее редактирование: 03-04-2012 14:09 от darkelf » Записан
IgnisFatuus
Постоялец

ru
Offline Offline

« Ответ #12 : 03-04-2012 14:23 » 

К сожалению на работе... Дома буду только к 21.00 по Москве... Сразу просто хочу спросить - где проще все настроить? Linux. Если есть возможность и желание помочь - могу написать icq/skype  итд
Записан
darkelf
Молодой специалист

ua
Offline Offline

« Ответ #13 : 03-04-2012 14:35 » 

Обычно в linux подобные вещи не требуют настройки - поставил из репозитория и всё. В windows тоже, но т.к. там много вариантов сред и компиляторов- gcc (с большим набором сред) и Visual Studio разных версий, то мне будет трудно помочь, т.к. я работаю со старой и древней Visual Studio 6.0, и смогу подсказать только по ней.
Тогда Вам задание на дом - проверьте установлен ли у Вас в Linux (начнём с него) gcc, если нет - то попробуйте установить. Проверить можно будет скомпилировав для начала простенький C/С++-cный, пример, например такой:
Код:
#include <stdio.h>
int main(int argc, char* argv[])
{ printf("hello, world\n");
  return 0;
}
Запишите текст в файл, например с именем ex1.c, а затем скомпилируете в консоли командой:
Код:
g++ ex1.c -o ex1
и запустите на выполнение:
Код:
./ex1
при этом будет выведено сообщение:
Код:
hello, world
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #14 : 03-04-2012 15:20 » 

Последние стандарты в основном пересматриваются шаблоны, Ему ой как далеко до шаблонов. Базисные основы остаются прежними. Так что, по большому счету, практически нет разници, какой компилятор. Самое главное, чтоб он был С++. Без всяких добавлений.
Насчет убунты. Народ рекомендует ставить пакет
Код:
sudo apt-get install build-essential
Он вытянит все нужные зависимости. Это только компилятор и стандартные библиотеки. Среду разработки на первоначальном этапе можно выбрать gedit. У него есть функции подсветки кода и автоотступа.
« Последнее редактирование: 03-04-2012 15:27 от Finch » Записан

Не будите спашяго дракона.
             Джаффар (Коша)
IgnisFatuus
Постоялец

ru
Offline Offline

« Ответ #15 : 03-04-2012 17:35 » 

Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
Уже установлена самая новая версия build-essential.
build-essential установлен вручную.
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.


А дальше-то что? Что запускать и где это найти?

И вообще - опишите пожалуйста саму схему. На сколько я понял - пишу код в блокноте (или в чем-то еще), затем копирую его в компилятор, и ВУАЛЯ - прога ... Или я не прав?
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #16 : 03-04-2012 17:45 » 

Код:
g++ --version
Дает что либо?

PS. Для убыстрения процесса, зайди на форумный чат.
« Последнее редактирование: 03-04-2012 17:47 от Finch » Записан

Не будите спашяго дракона.
             Джаффар (Коша)
IgnisFatuus
Постоялец

ru
Offline Offline

« Ответ #17 : 03-04-2012 17:47 » 

g++ (Ubuntu/Linaro 4.5.2-8ubuntu4) 4.5.2
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #18 : 03-04-2012 17:48 » 

Зайди на форумный чат.
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
IgnisFatuus
Постоялец

ru
Offline Offline

« Ответ #19 : 04-04-2012 05:37 » 

Всем большое спасибо, начало положено)
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines