Премини към съдържанието
  • Добре дошли!

    Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

    Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

     

Малко помощ за С/С++ програмиране


Препоръчан отговор


Здравейте.

Някой можели да ми обясни как да компилирам програма на С.

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

Използвам книгата С в лесни стъпки. Свалих и инсталирах компилатора MinGW-3.1.0-exe както пише вкнигата. Добавих към променливата Path - MinGW\bin както съветват в книгата, но нещо не е както трябва.

Програмата e под името hello.c

#include <stdio.h>

int main()

{

printf("hello world\n");

return 0;

}

Стартирам cmd и пиша:gcc hello.c -o hello.exe, за да генерирам изпълним файл с името hello.exe, но нищо не се получава.

Също от книгата прочетох нещо което при мен го няма:

1 - в С: трябвало да има директория MyPrograms, е при мен нямаше затова я създадох и поставих файла там и отново нищо

2 - ако съм бил напишел в cmd - gcc - hello съм щял да видя списък с всички възможни опции на компилатора, но отново нищо.

Предварително Багодаря. :)

Линк към този отговор
Сподели в други сайтове

Поздравлениея за начинанието!аз също започнах с тази книга,но използвах друг компилатор - Borland C++Builder.Ства и за С, тъй като езиците са еквивалетни!

Линк към този отговор
Сподели в други сайтове

Отзад в книгата би трябвало да е обяснено как се работи с конзолните приложения...

Трябва ти компилатор които да преобразува кода ти в изпълним файл. Dev C++ е много добър вариант ето ти линк за сваляне:

Ето някои от най- известните и използвани компилатори за езика С++:

-------------------------------------------------------------------------------

GCC е най- известният безплатен компилатор на С/С++, като също така работи и с много други езици : http://gcc.gnu.org/

--------------------------------------------------------------------------------

Dev C++ е друг напълно безплатен компилатор за С++, който включва в себе си полезни приложения : http://www.bloodshed.net/devcpp.html

--------------------------------------------------------------------------------

Microsoft Visual C++ е мощно средство за обектно- ориентирано и визуално програмиране, разработено от Microsoft и е платено, разбира се.

http://msdn.microsoft.com/visualc/

--------------------------------------------------------------------------------

Borland C++ е друг популярен компилатор за С++, който е платен. От този линк можете да изтеглите безплатната пробна trial версия:

http://www.borland.com/downloads/download_cbuilder.html

Ако вече имаш конзола тогава :

Редактирано от hekyll (преглед на промените)

Линк към този отговор
Сподели в други сайтове

Проекти за конзолни приложения с Microsoft Visual C++

Най-новите версии на този компилатор са интегрирани в развойната среда,наречена

Microsoft Visual Studio.Най-простият начин за изграждане на приложения в тази среда

е да се създават проекти.Ние ще създадем един проект със произволно име.

Създаване на Нов Проект

1. Заредете средата Microsoft Visual C++

Ако средата се стартира празна,щракнете върху File и New...

visualc1fi1.png

2. Ще се появи следният диалогов прозорец New:

visualc2wd2.png

Следвайте тези стъпки:

а-Изберете страницата Project

b-Изберете типа на проект "Win32 Console Application"

cLocation въведете мястото на твърдият ви диск ,в което искате да съхранявате

файловете на вашият проект.

d-Задайте някакво име за проекта,например test.Това име автоматично ще се добави

към пътя,който сте определили в стъпка c.

e-Щракнете върху OK.

Ако използвате версия 6 на развойната среда,ще се появи диалогов прозорец,който

ви пита какъв тип приложение желаете.В този случай изберете "An empty project" и

щракнете върху Finish.

visualc3mk8.png

Най-вероятно ще се появи обобщаващ прозорец.Щракнете върху OK.

3.На този етап вече имаме празен проект и в лявата част на прозореца

трябва да има панел със списък на класове,който е празен,защото все

още не сме започнали нашата програма.

visualc4cr7.png

Ако се вгледате по внимателно в долният край на панела,ще видите два таба:

ClassView и FileView.

Щракнете върху FileView.

4.В страницата FileView би трябвало да видите икона за група,наречена test files.

Щракнете с десният бутон на мишката върху нея и изберете опцията

Add files to Project...

visualc5yl2.png

5.Ще се появи диалоговият прозорец "Insert Files into Project".Това е обичайният диалогов

прозорец Open/Save,отворен в директорията,в която сте поставили проекта в стъпка 2.

visualc6ic7.png

С помощта на този диалогов прозорец можем да включим в проекта необходимите ни

файлове,като въведем тяхното име в полето "File Name":

Например бихме могли да включим файла test.cpp

(по принцип е прието главният файл на проекта да се казва като самият проект

плюс разширението .cpp)

Понеже най-вероятно ще бъде нов файл,то средата ще ни предупреди,че такъв файл

не съществува и ще ни пита дали независимо от това искаме да го включим в проекта.

Ще щракнем върху Yes.

6.След като сме включили нашия(ите) файл(ове) в проекта,те ще се виждат в групата

test files.

visualc7wj9.png

Ако използвате Visual C++ 6.0 ,файловете ще се появят в подгрупа с име Sourse files.

В по ранните версии те се появяват директно в групата test files.

Сега,като щракнем двукратно върху някой от файловете в проекта(например върху test.cpp)

файлът ще се отвори в главният прозорец на развойната среда и ще можем да редактираме

неговото съдържание.

Ако файлът,който искате да отворите,все още не съществува,ще бъдете попитани дали не искате той

да бъде създаден.Опитайте да щракнете фърху test.cpp и след това потвърдете,че искате да го

създадете.

Сега можем да редактираме файловете от нашият проект по начина,по който желаем.

Компилиране и изпълняване на проект

След като напишем програмата,трябва да се опитаме да я стартираме.За тази цел трябва да

отидем в менюто Build и от него да изберем опцията Execute test.exe

Moжете да извършите същото действие и като щракнете върху иконата с червен възклицателен знак

в лентата с инструменти,или като натиснете едновременно клавишите Control и F5.

Използвайте метода,който предпочитате.

Редактирано от hekyll (преглед на промените)
Линк към този отговор
Сподели в други сайтове
Пич по-добре се насочи кум C# или Java

C# и Java не са от особено лесните езици и то за начинаещи. В общи линии философията е: Научи един - останалите след това се учат от лесно по-лесно!

Отзад в книгата би трябвало да е обяснено как се работи с конзолните приложения...

Трябва ти компилатор които да преобразува кода ти в изпълним файл. Dev C++ е много добър вариант ето ти линк за сваляне:

Ето някои от най- известните и използвани компилатори за езика С++:

-------------------------------------------------------------------------------

GCC е най- известният безплатен компилатор на С/С++, като също така работи и с много други езици : http://gcc.gnu.org/

--------------------------------------------------------------------------------

Dev C++ е друг напълно безплатен компилатор за С++, който включва в себе си полезни приложения : http://www.bloodshed.net/devcpp.html

--------------------------------------------------------------------------------

Microsoft Visual C++ е мощно средство за обектно- ориентирано и визуално програмиране, разработено от Microsoft и е платено, разбира се.

http://msdn.microsoft.com/visualc/

--------------------------------------------------------------------------------

Borland C++ е друг популярен компилатор за С++, който е платен. От този линк можете да изтеглите безплатната пробна trial версия:

http://www.borland.com/downloads/download_cbuilder.html

Ако вече имаш конзола тогава :

В Dev C++ има възможност да си изтеглиш IDE-то с включен компилатор MinGW и самото компилиране става доста лесно само с цъкане на мишока. Ако решиш обаче да преминеш към програмиране с потребителски интерфейс, товага решението е wxDev-Cpp (който също включва в себе си компилатор, но всъщност по-силната му страна е инструмента за рисуване на потребителския интерфейс. wx говори за wxWidgets)

Линк към този отговор
Сподели в други сайтове
Отзад в книгата би трябвало да е обяснено как се работи с конзолните приложения...

Трябва ти компилатор които да преобразува кода ти в изпълним файл. Dev C++ е много добър вариант ето ти линк за сваляне:

Ето някои от най- известните и използвани компилатори за езика С++:

-------------------------------------------------------------------------------

GCC е най- известният безплатен компилатор на С/С++, като също така работи и с много други езици : http://gcc.gnu.org/

--------------------------------------------------------------------------------

Dev C++ е друг напълно безплатен компилатор за С++, който включва в себе си полезни приложения : http://www.bloodshed.net/devcpp.html

--------------------------------------------------------------------------------

Microsoft Visual C++ е мощно средство за обектно- ориентирано и визуално програмиране, разработено от Microsoft и е платено, разбира се.

http://msdn.microsoft.com/visualc/

--------------------------------------------------------------------------------

Borland C++ е друг популярен компилатор за С++, който е платен. От този линк можете да изтеглите безплатната пробна trial версия:

http://www.borland.com/downloads/download_cbuilder.html

Ако вече имаш конзола тогава :

Аз вече използвам Dev C++. Нещо много сложно ми се видя свалянето на Microsoft Visual C++. Пробвах да дръпна ..Visual 2008 Beta и като се започна: регистрация..... Live ID.....! Притеб такали беше? А иначе направих всичко както искат и в момента тегля файл който е 1.8 GB. Освен това неразбрах какъв точно е типа на файла. Нали се сещате как Windows-а когато неразпознава даден файл показва ("празна")икона, т.е. без инициализиране на типа файл. Ако сте ме разбрали кажете каква програма ми трябва да го отворя след свалянето.

Поздрави.

З.

ps.

не можах да отговоря по рано, защото имах проблеми с нета(авария по трасето)

cool.gif

Линк към този отговор
Сподели в други сайтове

Започнах да изучавам С++. Изтеглих си този компилатор: Dev C++ .

Написах една много проста програма, компилирах я, стартирах я. Всичко мина без грешка. Но не мога да видя изпълнението на тази програма. Бихте ли ми помогнали с този проблем. Ето и сорс кода на програмата. Ако греша с или в нещо бихте ли ми помогнали.

// pyrva programa

#include <iostream.h>

void main ()

{

cout << "Privet" << "\n";

}

Линк към този отговор
Сподели в други сайтове
Започнах да изучавам С++. Изтеглих си този компилатор: Dev C++ .

Написах една много проста програма, компилирах я, стартирах я. Всичко мина без грешка. Но не мога да видя изпълнението на тази програма. Бихте ли ми помогнали с този проблем. Ето и сорс кода на програмата. Ако греша с или в нещо бихте ли ми помогнали.

// pyrva programa

#include <iostream.h>

void main ()

{

cout << "Privet" << "\n";

}

Единият вариянт е като я стартираш от команд промпт:

(Start -> Run -> cmd)

отиваш в папката където ти е готовото .ехе

и го стартираш ime.exe

Вторият вариянт е като добавиш след cout << "Privet" << "\n"; следния ред: system ("pause");

Това ще добави опция при стартирането на програмата и след изпълнението и да се изчака потребителя да натисне който и да е клавиш за да се затвори команд промпта при, който е стартиран с програмата, а не веднага да се затвори след изпълнението й.

Ще изглежда нещо от сорта:

#include <iostream>


using namespace std;


int main() {


	 cout << "Privet" << endl;

	 system("pause");

	 return 0;

	 }

Линк към този отговор
Сподели в други сайтове

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

Как вече действащата програма да я превърна и запиша като ЕХЕ фаил?

Линк към този отговор
Сподели в други сайтове

Привет на всички във форума.Аз също сyм новак в програмирането на C++ ,използвам DEV C++ и ме измъчва тази грешка в следната изключително проста програма:

#include <iostream>

using namespace std

int main()

{double a = 2.3;

double b = 3.7;

double p, s;

p = 2*(a+b);

s = a*b;

cout << "p= " << p << "\n";

cout << "s= " << s << "\n";

system ("pause")

return 0;

}

greshkatd0.th.jpg

Редактирано от moxit0 (преглед на промените)
Линк към този отговор
Сподели в други сайтове
Привет на всички във форума.Аз също сyм новак в програмирането на C++ ,използвам DEV C++ и ме измъчва тази грешка в следната изключително проста програма:

#include <iostream>

using namespace std

int main()

{double a = 2.3;

double b = 3.7;

double p, s;

p = 2*(a+b);

s = a*b;

cout << "p= " << p << "\n";

cout << "s= " << s << "\n";

system ("pause")

return 0;

}

greshkatd0.th.jpg

Ми то си пише :huh: Грешката е доста проста както и проблема, но не се притеснявай на всеки се случва.

Проблема е:

Изпусната ";" в края на редовете

using namespace srd;

и

system("pause");

Линк към този отговор
Сподели в други сайтове

Гледам и се чудя що хората не си свалят Visual C++ 2005? Още повече се чудя, защо начинаещи са тръгнали да учат сами C++. C#.NET е по-лесен и по-забавен. Имам една страхотна книжка. Много е весела. Още в първа глава си правиш собствен уеб браузър cool.gif

Линк към този отговор
Сподели в други сайтове
Гледам и се чудя що хората не си свалят Visual C++ 2005? Още повече се чудя, защо начинаещи са тръгнали да учат сами C++. C#.NET е по-лесен и по-забавен. Имам една страхотна книжка. Много е весела. Още в първа глава си правиш собствен уеб браузър cool.gif

Ми на първото ти чудене отговорът е много прост:

- Visual C++ е платен, а Dev-Cpp е безплатен с отворен код и има доста документация за него

По второто:

- Не бих казал, че C# е по-лесен, но всеки усвоява по различен начин.

Истината в крайна сметка е, че научиш ли един език няма проблем да научиш и други.

Линк към този отговор
Сподели в други сайтове
Ми на първото ти чудене отговорът е много прост:

- Visual C++ е платен, а Dev-Cpp е безплатен с отворен код и има доста документация за него

По второто:

- Не бих казал, че C# е по-лесен, но всеки усвоява по различен начин.

Истината в крайна сметка е, че научиш ли един език няма проблем да научиш и други.

Visual C++ Express Edition е напълно безплатен: http://msdn2.microsoft.com/en-us/express/aa975050.aspx Инсталираш го, пускаш го, правиш си безплатна регистрация, дават ти сериен номер и е твой ;)

Линк към този отговор
Сподели в други сайтове

Благодаря за бързите отоговори на въпросите които задавам. С тях нещата започнаха да ми се изясняват. Но се появяват други въпроси на които не мога да си отговоря сам.

В ръководсвото откъдето се мъча да се запозная със С++, пред main понякога се слага void, понякога не се слага, тук в по-горните програми пред main се слага int и не мога да си обясня защо и кога се пишат и не се пишат тези команди. а и изглежда че компилатора коиото си свалих DEV C++ приема void като грешка.

Ще се радвам да разбера отоговорите на тези въпроси, а и не само на тях и другите които възниквзт при самообучението ми с С++

Линк към този отговор
Сподели в други сайтове
Гледам и се чудя що хората не си свалят Visual C++ 2005? Още повече се чудя, защо начинаещи са тръгнали да учат сами C++. C#.NET е по-лесен и по-забавен. Имам една страхотна книжка. Много е весела. Още в първа глава си правиш собствен уеб браузър cool.gif

и като още в първата глава си направи браузър, какво разбра от целата работа нищо, нали :yanim:

Линк към този отговор
Сподели в други сайтове
и като още в първата глава си направи браузър, какво разбра от целата работа нищо, нали :rolleyes:

Прав си, но идеята е, че самият процес на учене на езика е по-интересен. На C++ през цялото време работиш само с конзолни програми и е леко скучно.

Линк към този отговор
Сподели в други сайтове
В ръководсвото откъдето се мъча да се запозная със С++, пред main понякога се слага void, понякога не се слага, тук в по-горните програми пред main се слага int и не мога да си обясня защо и кога се пишат и не се пишат тези команди. а и изглежда че компилатора коиото си свалих DEV C++ приема void като грешка.

Значи "main"-е функция.По точно на езика C,това е началото на декларацията на функцията.

После следват идентификатори за променливи,и типове данни.

Паметта на компютъра е организирана в байтове.Байтът е минималното количество памет с което можем да работим.

Фактически ,ако пишем под функция main ()

променлива,която има определен идентификатор.които работи с определено количество памет.

Зависи от това което пишем.{Колко памет заема}.

Типове данни

Един байт съхранява сравнително малко инфо.от 0 до 255,число, или един знак.

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

char - 1 байт,знак или цяло число с дълж. 8 бита. от 0 до 255.

short-2 баита,цяло число с дълж. 16 бита. от 0 до 65535

long - 4,цяло число с дълж. 32 бита. от 0 до много.

int- Цяло число с дълж. която зависи от типа Word на систем. която може да е 16,32,x86,64,бита.

float 4 ,число с плаваща

double 8 ,число с плаваща запетая с двойна точност.

longdouble 10 ,число с плаваща запетая с двойна точност.

bool - Булева стойност , добавен от ANSI стандарт тип данни.

Освен тези типове има още два типа спецификаций за параметър:

указатели и void.

Void - функций без типове,ако не искаме да връщаме никаква стойност.

Това е функция без параметри или аргументи,а не нещо друго.

Ако не съм бил много ясен,просто пиши кода в упражненията и ще схванеш,на каде бия.....

Линк към този отговор
Сподели в други сайтове

някой май яко преписва от учебниците biggrin.gif

даже не е грешка в C++ маин-а да го оставиш без тип на връщатана стойност, по подразбиране си е int.

Линк към този отговор
Сподели в други сайтове

Имам една книжка,ама не е кой знае кво.

Още съм начинаещ и го уча в момента.

Работя на конзолно приложение със C++..

Kaто пиша деклараций на функций ,как да ми излизат на Български?

Нещо в настройките ли трябва да се промени?

Редактирано от hekyll (преглед на промените)
Линк към този отговор
Сподели в други сайтове

#include <iostream.h>

//извеждане на малките латински букви

using namespace std;

int main ()

{

char l;

cout << "Eto bukvite ot latinskata azbuka \n";

for ( l = 97; l != 123; l++)

{cout << l << "\n";

}

system ("pause");

return 0;

}

Отново имам въпроси в моето изучаване на С++. sad.gif

В горната програма, ако се промени int пред main във void компилатора дава грешка. Въпроса ми е защо дава тази грешка? Все още на мога да разбера разликата между двата индентификатора. Кога се пише void и кога int пред main и защо? Въпреки, че по-горе е обяснено. Явно съм нещо тъпичък. :wors:

Не мога да разбера каква функция изпълняват всяка една от думите using namespace std и system ("pause"). В комбинация тези думи запазват екрана на изпълнение на програмата и изчакват натискане на произволен клавиш. Това ми ясно. Но ми се губят подробностите.

Ако се премахне return 0, програмата работи без проблем, но ако се премахне само нулата, дава грешка. Въпроса ми е защо действа по този начин?

В учебника, който ползвам не е обяснено това. :clap:

Линк към този отговор
Сподели в други сайтове

Добавете отговор

Можете да публикувате отговор сега и да се регистрирате по-късно. Ако имате регистрация, влезте в профила си за да публикувате от него.

Гост
Напишете отговор в тази тема...

×   Вмъкнахте текст, който съдържа форматиране.   Премахни форматирането на текста

  Разрешени са само 75 емотикони.

×   Съдържанието от линка беше вградено автоматично.   Премахни съдържанието и покажи само линк

×   Съдържанието, което сте написали преди беше възстановено..   Изтрий всичко

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Добави ново...

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите Условия за ползване