C++ для новичков

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Micr0b, 5 Dec 2006.

  1. Micr0b

    Micr0b Elder - Старейшина

    Joined:
    14 Jan 2006
    Messages:
    223
    Likes Received:
    168
    Reputations:
    26
    C++ для новичка...

    И так для тех кто хочет изучать c++, могу порекомендовать вот что:

    1. Определитесь нужно ли ето вам.
    2. Выберите язык программирования по-вебу(Php,Perl,C#,JavScript,VbScript...) (Assambler,C++,Pascal...)
    3. Нужно скачать или купить несколько учебников.
    4. Нанять учителя.
    5. Выбрать себе компилятора
    6. Ну а если вы хотите быстро понять что такое программирования/с++ то можно просто прочитать эту статью.

    И так начнём

    ####1####
    Нужно ли вам программирование.. мож у вас в жизни есть другие цели, чото вас больше интересует ..и так далее..
    то в этом случае я вам скажу что изучать программирования не рекомендуется .. так как вы не будете получать удовольствия
    от написания программ или скриптов. Если вас это реально заинтересовало и вы от 5 лет клацаете по клаве и пересмотрели
    много софта и хотите делать чото свое то тогда вы на нужном пути.
    ####2####
    И так вы все-таки решили программировать. Но не знаете с чего начать..
    Тогда вам реально нужно определится что вы хотите. Хотите может создавать какие-то Интернет страницы(сайты), писать полезные
    скрипты и чото в этом роде то тогда думаю вам нужно изучать язык и раздела веба (Php,Perl,С#,JavScript,VbScript...).
    Ну а если вас больше интересует какой не будь софт, ОС то думаю тебя нужно тогда выбрать раздел с языками
    (Assambler,C++,Pascal...)
    ####3####Вот несколько ссылок на буксы в электронной версии(но лучше, ну принайми для меня, пойти в магазин и купить нормальной учебник):
    Books1
    Books2

    ####4####
    Можно нанять себе учителя 1час=от 5$...
    Если уж у вас нет средств на это. то пожалуй придется самому изучать..(
    ####5####
    Обязательно нужно выбрать себе компилятора.
    Компилятора(COMPILES)-это программа которая перекодирует ваш набранной код в машиной).После удачной компиляции
    будет уже готовая созданная вами программа.
    На данной момент есть множество компиляторов. Я приведу 3 компи., и дам краткое объяснения к каждому.

    1. MaGAr – это без никакого интерфейса компил., чтоб пользоватся им нужно создать просто нотепад с расширением cpp, вписать програму, сохранить, открыть cmd и написать
    Code:
    C:\>g++ nazva.cpp
    если все пройдет удачно то в етой директории где лежыть исходник пори,создастся уже готовая програма.
    2. Turbo – это компилятор с интерфейсом, стоит только написать программу и проверить, ну и конешно сохранить).

    [​IMG]

    [​IMG]

    [​IMG]

    3. Visual C++ -это многофункциональный компилятор.
    Лично я пользуюсь только 2 первыми.

    ####6####
    И так вы выбрали язык программирования С++, на сегодняшней день его можно щитать элитным и много уважаемым.
    Для начала нужно разобраться что такое С++.

    С++ это много функциональной и оптимизированной язык программирования. Не буду говорить об нём целою историю но
    скажу нечто кратко. С++ Походит от С, и в многом чему выше своего старшего братика(С).)))

    Программа состоит с библиотек.
    Библиотеке с/с++ - это набор стандартных функций для работы с основными возможностями ОС

    Вот главное тело кода:

    Code:
    #include<iostream.h>//оглавление библиотеки  
    
    int main()//начало тела программы
    {
    Объявление переменных
    Инструкция_1
    Инструкция_2
    ……………………………
    Инструкция_N
    return 0;// конец программы
    }
    Пример:

    Code:
    #include<iostream.h>
    int main()
    {
    int a, c=5, d=3;
    a=c+d;
    cout<<”Результат”<<a;
    return 0;
    }
    Где int - ето есть целой тип, их есть несколько но об них чуть поже
    int a, c, d; - присваивание переменyым a, c, d тип int
    a=c+d; - математика =)
    cout<<”you text”; - выводит результат на экран
    cout<<”Результат”<<a; - выводит результат на экран, притом ищо результат a=c+d;

    Code:
    #include<iostream.h>
    int main()
    {
     int a, c, d;
    cout<<”Ведите число c, d”;
    cin>>a;
    cin>>d;
    a=c+d;
    cout<<”Результат”<<a;
    return 0;
    }
    Где cin>>d; - оператор для ввода текста с клавиатуры и присваивания переменным конкретного значение.


    Несколько операторов:

    Оператор if - это оператор условного перехода
    if (условие)
    /* если условие верна то будет выполнятся все действия которые есть здесь */
    else
    /* если условие не верное то будет выполнятся все действия которые есть здесь */


    Примечания!!!
    Если в операторе if(или каком то другом операторе) есть ныполнение несколько операции (ну типа ввод/вывод, +,-,/,*...)
    то нужно перед выполнениям и после поставить две {}.
    Пример:
    Code:
     if (5>2)
    {
       a=5+1;
       cout<<a;
    }
    Else
    {
       a=5-1;
       cout<<a;
    }
    Оператор do-while - это оператор с перед условием

    Code:
    do {
    cout<<"Привет";
    /* ,,, */
    } while (условие);
    Пример:

    Code:
    char q;
    do {
    cout<<"Привет, введите x";
    cin>>q;
    } 
    while (q!='x');
    программа будет выполнятся до тех пор пока вы не вереде с клавы х.

    Оператор while - это оператор с перед условием

    Code:
    While(условие)
    {
    cout<<"Привет";
    }
    Пример:
    Code:
    a=1
    While(a>5) do {
    cout<<"Привет";
    a=a+1
    }
    сначала проверяется условие, а потом идут все действия..

    Оператор for - это циклической оператор

    Code:
    for (a=1;a<10;a++){
    cout<<"Универсальной оператор";
    }
    a++ ето тоже самое что a=a+1, думаю здесь все ясно.


    И так мы уже выучили несколько операторов теперь перейдем к типам, я напишу 2 так как они есть много стандартами в программирование

    int - целой
    double – дробовой, целой

    Думаю все для новичка хватит ...)), а теперь бегите в книжной магазин и берите большую книгу по С++,
    или скачайте электронную версию.

    Статья сугубо для новичков =)
     
    #1 Micr0b, 5 Dec 2006
    Last edited: 5 Dec 2006
    4 people like this.
  2. Tikson

    Tikson Elder - Старейшина

    Joined:
    9 Oct 2005
    Messages:
    263
    Likes Received:
    42
    Reputations:
    14
    #include<iostream.h> а почАму не написал, что это значит?
    #include<iostream.h> - включение #include в программу фаил iostream.h
    это позвоялет работать со стандартными средствами экранного ввода с++......содержимое включаемого фаила вставляется в исходный текст программы.
     
    1 person likes this.
  3. .Slip

    .Slip Elder - Старейшина

    Joined:
    16 Jan 2006
    Messages:
    1,571
    Likes Received:
    977
    Reputations:
    783
    У int разве нету ограничения в кол-ве знаков? Или это только в делфи?=)
     
    1 person likes this.
  4. _Pantera_

    _Pantera_ Характерне козацтво

    Joined:
    6 Oct 2006
    Messages:
    186
    Likes Received:
    356
    Reputations:
    109
    ИМХО содрал с какого то учебника!
    Автор темы ИМХО сам ниче не понимает


    а я думал подключение библтотеки...


    начало основной функции


    Эта строка подтверждает что ты это откудото содрал


    Цикла While..do в природе не существует, к тому же тут регистр учитывается и While от while очень отличается.
    Правильно будет так

    a=0;
    while (a<5)
    {
    cout<<"Привет";
    a=a+1;
    }



    тут кажец0 не хватает точки с запятой.


    HakNet ты в первую очередь беги...
     
    #4 _Pantera_, 5 Dec 2006
    Last edited: 5 Dec 2006
    3 people like this.
  5. Ksander

    Ksander Elder - Старейшина

    Joined:
    21 Jun 2006
    Messages:
    526
    Likes Received:
    260
    Reputations:
    138
    Ну так я смотрю, что HakNet нигде не писал что именно он писал это, да и не в стаьях он это выложил, так что притензий о плагиате не должно быть, имхо.
     
    3 people like this.
  6. s1zeOff

    s1zeOff Member

    Joined:
    16 Nov 2006
    Messages:
    17
    Likes Received:
    7
    Reputations:
    5
    MaGAr и Turbo С это прошлый век, в настроящее время стоит выбор перед Borland C++ Builder и Microsoft Visual C++
     
    1 person likes this.
  7. KoTeG

    KoTeG Banned

    Joined:
    29 Apr 2006
    Messages:
    198
    Likes Received:
    165
    Reputations:
    2
    А как же Dev C++ ( довольно рульгая вешь ) !?
     
    1 person likes this.
  8. tclover

    tclover nobody

    Joined:
    13 Dec 2005
    Messages:
    741
    Likes Received:
    682
    Reputations:
    287
    :)
    Второй раз ты уже пишешь слово assembler через assAmbler )
    А что, ассемблер язык веб программирования? :)
    Дай линк на какой нибудь сайт на ассме. Очень интересно посмотреть :)
    Ну и тут тебе уже всё исправили )
     
  9. .Slip

    .Slip Elder - Старейшина

    Joined:
    16 Jan 2006
    Messages:
    1,571
    Likes Received:
    977
    Reputations:
    783
    Да и не только ассемблер веб программинг из списка:)
     
  10. bobob

    bobob Member

    Joined:
    2 Jun 2006
    Messages:
    111
    Likes Received:
    69
    Reputations:
    -15
    заклювали, вороны!
     
    5 people like this.
  11. Micr0b

    Micr0b Elder - Старейшина

    Joined:
    14 Jan 2006
    Messages:
    223
    Likes Received:
    168
    Reputations:
    26
    Tikson - для етого и есть букс или ты хотел чтоб я целую книгу выложыл свою.

    [sL1p] - впадляк было посмотреть в книгу.. написл быстро.)) кажысь правильно

    Боец_Pantera_ - незнаеш не ****.

    s1zeOff - у каждего всой выбор

    tclover - ну а за assAmbler есть нескоько книг нужно на харде поискать правда шас вобше не смотрю туда.. мож лень мож просто нет нужды.))

    c411k - зафтыкал букс влепить.))) у сестры день рождение.))) спешыл.. шас поставлю.))),
     
    #11 Micr0b, 5 Dec 2006
    Last edited: 5 Dec 2006
  12. .Slip

    .Slip Elder - Старейшина

    Joined:
    16 Jan 2006
    Messages:
    1,571
    Likes Received:
    977
    Reputations:
    783
    Я так и не узнал, есть в С++ что то наподобие longint'a?
     
  13. freddi

    freddi Elder - Старейшина

    Joined:
    5 Jul 2006
    Messages:
    399
    Likes Received:
    243
    Reputations:
    145

    Есть:
    long

    например:
    10L
     
  14. .Slip

    .Slip Elder - Старейшина

    Joined:
    16 Jan 2006
    Messages:
    1,571
    Likes Received:
    977
    Reputations:
    783
    Диапазоны можешь написать?
     
  15. Micr0b

    Micr0b Elder - Старейшина

    Joined:
    14 Jan 2006
    Messages:
    223
    Likes Received:
    168
    Reputations:
    26
    float- кажысь, но я все время использую просто int так как мне неприходилось..
     
  16. freddi

    freddi Elder - Старейшина

    Joined:
    5 Jul 2006
    Messages:
    399
    Likes Received:
    243
    Reputations:
    145

    [-2147483648 ; 2147483647]

    И что в них тебе не понравилось?

    Размер: 4 байта.
     
  17. Micr0b

    Micr0b Elder - Старейшина

    Joined:
    14 Jan 2006
    Messages:
    223
    Likes Received:
    168
    Reputations:
    26
    Простые типы данных
    Простые типы делятся на целочисленные типы и типы с плавающей точкой. Для описания стандартных типов определены следующие ключевые слова:

    int (целый);

    char (символьный);

    wchar_t (расширенный символьный);

    bool (логический);

    float (вещественный);

    double (вещественный с двойной точностью).

    Существует четыре спецификатора типа, уточняющих внутреннее представление и диапазон значений стандартных типов:

    short (короткий);

    long (длинный);

    signed (со знаком);

    unsigned (без знака).


    http://ips.ifmo.ru/courses/cpp/topic1/l2/index.html
     
  18. .Slip

    .Slip Elder - Старейшина

    Joined:
    16 Jan 2006
    Messages:
    1,571
    Likes Received:
    977
    Reputations:
    783
    Просто кто то не умеет на конале ирк давать нормальные ссылки:) У с++ такой же диапазон как и у делфи... Вопрос снятъ
     
  19. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    кто найдет 2 ошибки - тому +10.
     
  20. freddi

    freddi Elder - Старейшина

    Joined:
    5 Jul 2006
    Messages:
    399
    Likes Received:
    243
    Reputations:
    145

    Нашел только 1:

    Если стоит return 0, то надо поставить

    int main(int)

    Вроде так.