[C++] Początki programowania na linuxie

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
Awatar użytkownika
sQrtek
Sędziwy Jeż
Sędziwy Jeż
Posty: 99
Rejestracja: 13 lut 2010, 11:57
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

[C++] Początki programowania na linuxie

Post autor: sQrtek »

Witam

Zainteresowałem sie programowaniem na ubuntu, i już na początku występują błędy... korzystam z terminala, ściągłem build-essential, a gdy próbuje skompilować plik, wyskakuje i tak błąd...

napisałem prosty program w celu przetestowania programowania w terminalu...


#include <iostream>
#include <conio.h>

using namespace std;

void main()
{
cout <<"Hello" << endl;
getch();
}


a błędy są następujące...

first.cpp:2:19: error: conio.h: Nie ma takiego pliku ani katalogu
first.cpp:6: error: ‘::main’ must return ‘int’
first.cpp: In function ‘int main()’:
first.cpp:9: error: ‘getch’ was not declared in this scope


Co zrobić z tym fantem?
Chris1507
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 156
Rejestracja: 02 maja 2011, 20:55
Płeć: Mężczyzna
Wersja Ubuntu: 12.10
Środowisko graficzne: KDE Plasma
Architektura: x86

Re: [C++] Początki programowania na linuxie

Post autor: Chris1507 »

viewtopic.php?f=170&t=64170

Funkcja main() powinna być typu int i na końcu z instrukcją: "return 0;"
Awatar użytkownika
sQrtek
Sędziwy Jeż
Sędziwy Jeż
Posty: 99
Rejestracja: 13 lut 2010, 11:57
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Re: [C++] Początki programowania na linuxie

Post autor: sQrtek »

Napisałem to w ten sposób:


#include <iostream>

using namespace std;

int main()
{

cout << "Hello World!" << endl;
return 0;

}


I działa... biblioteka conio.h rozumiem że tutaj nie działa tak?..
kod z mojego pierwszego postu pochodzi z kursy "od zera do gier kodera" ale widzę że ten kurs do niczego raczej sie nie przyda jak ten kod zupełnie nie działa w g++...
Ostatnio zmieniony 28 lis 2011, 17:45 przez sQrtek, łącznie zmieniany 1 raz.
Awatar użytkownika
Dwimenor
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1260
Rejestracja: 18 mar 2008, 16:14
Płeć: Mężczyzna
Wersja Ubuntu: 13.10
Architektura: x86_64

Re: [C++] Początki programowania na linuxie

Post autor: Dwimenor »

conio.h to biblioteka dla ms-dos. Poszukaj sobie jakiegoś kursu, który jest niezależny platformowo.
Poniższe zdanie jest fałszywe.
Powyższe zdanie jest prawdziwe.
Awatar użytkownika
sQrtek
Sędziwy Jeż
Sędziwy Jeż
Posty: 99
Rejestracja: 13 lut 2010, 11:57
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Re: [C++] Początki programowania na linuxie

Post autor: sQrtek »

Hmm masz jakiś przykład kursu który byłby dobry dla programowania w terminalu? Z góry dzięki.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: [C++] Początki programowania na linuxie

Post autor: ethanak »

zainteresuj sie ncurses. zreszta istnieje emulacja conio zrobiona wlasnie w ncurses, ale sluzy wylacznie do portowania dosowych programow a nie pisania nowych.
Awatar użytkownika
sQrtek
Sędziwy Jeż
Sędziwy Jeż
Posty: 99
Rejestracja: 13 lut 2010, 11:57
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Re: [C++] Początki programowania na linuxie

Post autor: sQrtek »

Chyba to kiepski pomysł, czyżby nie było żadnych kursów pod C++ w terminalu?
Chris1507
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 156
Rejestracja: 02 maja 2011, 20:55
Płeć: Mężczyzna
Wersja Ubuntu: 12.10
Środowisko graficzne: KDE Plasma
Architektura: x86

Re: [C++] Początki programowania na linuxie

Post autor: Chris1507 »

Bierzesz kurs C++ (Google zwraca dużo wyników) i się uczysz. W edytorze (nano, vi) piszesz kod, a g++ kompilujesz, ewentualnie możesz zainstalować Code::Blocks.
Awatar użytkownika
sQrtek
Sędziwy Jeż
Sędziwy Jeż
Posty: 99
Rejestracja: 13 lut 2010, 11:57
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Re: [C++] Początki programowania na linuxie

Post autor: sQrtek »

no co Ty nie powiesz.. wiele już kursów przejrzałem i wiele nie kompiluje mi w g++, ale cóż muszę szukać.
Sordi
Piegowaty Guziec
Piegowaty Guziec
Posty: 3
Rejestracja: 26 lis 2011, 21:27
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: [C++] Początki programowania na linuxie

Post autor: Sordi »

Dla początkującego bardzo wygodne będzie IDE Code::Blocks dostępne na synapticu.
Z własnego doświadczenia polecam kurs http://cpp0x.pl/kursy/Kurs-C++/1. Bardzo ładnie opisane + dodatkowa biblioteka.

Jeśli chcesz pisać dalej pod geditem i odpalać z terminalu kurs nadal będzie dobrym początkiem.
I nie używaj conio.h, to przeżytek. Do tego jak ktoś wspomniał powyżej kompatybilny tylko z MS-DOS.

Jeszcze jedna notka. Kurs "od zera do gier kodera" ma pełno błędów, nie warto się na nim uczyć.
Pozdrawiam. :)
Awatar użytkownika
sQrtek
Sędziwy Jeż
Sędziwy Jeż
Posty: 99
Rejestracja: 13 lut 2010, 11:57
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Re: [C++] Początki programowania na linuxie

Post autor: sQrtek »

Ja piszę pod nano, a nie pod geditem :) Przetestuję ten kurs co mi podałeś, zupełnie o nim zapomniałem, ale pamiętam że on był pisany pod "Dev C++" zobaczymy jak sie będzie sprawował w nano+G++ :D Także dziękuję bardzo !
alojzikftp
Sędziwy Jeż
Sędziwy Jeż
Posty: 66
Rejestracja: 09 mar 2011, 20:17
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: Brak
Architektura: x86

Re: [C++] Początki programowania na linuxie

Post autor: alojzikftp »

Z tego co mi wiadomo to jeśli includujesz coś co kończy się na .h, to pochodzi to z C.
W C++ należy pisać to inaczej: usuń .h z tyłu i dopisz c z przodu np:

Kod: Zaznacz cały

#include <string.h>
zamień na

Kod: Zaznacz cały

#include <cstring>
. Przy standardowych bibliotekach to stare niby działa, ale teoretycznie mogły zostać usunięte, jako że są z innego języka.
Oto lista takich użytecznych które działają wszędzie: cstdio, iostream, string, cstring, vector, queue, stack, set, algorithm, często też cmath, cstdlib.
Pozdrawiam
Awatar użytkownika
Dwimenor
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1260
Rejestracja: 18 mar 2008, 16:14
Płeć: Mężczyzna
Wersja Ubuntu: 13.10
Architektura: x86_64

Re: [C++] Początki programowania na linuxie

Post autor: Dwimenor »

Jeżeli dopiero zaczynasz się uczyć, to zajrzyj na polskie wikibooks i poczytaj początkowe rozdziały o kompilacji i porób przykłady. Na wikibooks wszystko kompiluje się niezależnie od platformy.
Poniższe zdanie jest fałszywe.
Powyższe zdanie jest prawdziwe.
Awatar użytkownika
sQrtek
Sędziwy Jeż
Sędziwy Jeż
Posty: 99
Rejestracja: 13 lut 2010, 11:57
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Re: [C++] Początki programowania na linuxie

Post autor: sQrtek »

Hmm w sumie ciekawe też te wikibooks, wszystko ładnie wytłumaczone, już zacząłem czytać !
Dzięki bardzo !
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: [C++] Początki programowania na linuxie

Post autor: ethanak »

A najlepiej przestań jojczeć bo z jojczenia to jeszcze nikt programu nie napisał. Podałem Ci przykład ncurses - dokumentacja jest bardzo obszerna, czyżby za bardzo? Czy może nie raczyłeś nawet zerknąć i tak sobie płaczesz?
Z takim podejściem to za dwadzieścia lat napiszesz "hello world".
A czy używasz nano, gedita czy czegokolwiek to naprawdę wszystkich równo marszczy - tak samo pisze się kod w każdym edytorze. Szczególnie jeśli ktoś się upiera do stosowania notatnika do pisania kodu i burczy że mu składni nie podświetla ani podpowiedzi nie daje.
alojzikftp
Sędziwy Jeż
Sędziwy Jeż
Posty: 66
Rejestracja: 09 mar 2011, 20:17
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: Brak
Architektura: x86

Re: [C++] Początki programowania na linuxie

Post autor: alojzikftp »

Dobre :)
Kolega ma rację - chcesz klepać dla linuksa to klep, a jak algorytmika to popatrz sobie na SPOJ OI ACM, chcesz mieć fajny edytor to klep w vimie. Nic tylko klepać, klepać, klepać...
Pozdrawiam
norvoles
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1113
Rejestracja: 04 sty 2008, 20:58
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Inne
Architektura: x86_64

Re: [C++] Początki programowania na linuxie

Post autor: norvoles »

Chyba to kiepski pomysł, czyżby nie było żadnych kursów pod C++ w terminalu?
Mamy te samo Google? :D

Ja się uczyłem na samym początku z tego:
http://xion.org.pl/productions/texts/co ... atutorial/
Kurs nastawiony co prawda na Windowsa, ale jest to standardowy C++, który zadziała też na Linuksie (z kilkoma drobnymi wyjątkami). Może i ma błędy, ale właśnie temu jest dobry :D
Polecam też ten kurs: http://www.intercon.pl/~sektor/cbx/
No i tą: http://www.cplusplus.com/ i http://en.cppreference.com/w/cpp

Jednakże żaden kurs nie zastąpi sensownej książki. Od siebie polecę tą: http://helion.pl/ksiazki/jezyk-c-szkola ... cpprim.htm
chcesz mieć fajny edytor to klep w vimie.
Lepiej niech już klepie w nano, czy w czym tam chce, bo go jeszcze szlag trafi ;)
Awatar użytkownika
Cztery
Sędziwy Jeż
Sędziwy Jeż
Posty: 32
Rejestracja: 23 lip 2010, 12:28
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86_64
Lokalizacja: Jędrzejów
Kontakt:

Re: [C++] Początki programowania na linuxie

Post autor: Cztery »

Ja polecam Scratch - bardzo sprytny edytor tekstu, świetnie koloruje składnię.
A do nauki, jeśli nie posiadasz żadnej książki (np. "Symfonia C++ standard" J. Grębosza, co prawda nie nastawiona na linuxa / różne platformy ale świetna pod każdym względem), oczywiście polecam wymieniony wyżej przez norvoles'a tutorial Xiona (BTW pisany na podstawie tej właśnie "Symfonii"!). Można się z niego sporo nauczyć (jak na początek); pisany łatwo i przejrzyście, czyta się b.przyjemnie.
To ode mnie chyba wszystko ;)
Awatar użytkownika
drwyspa
Piegowaty Guziec
Piegowaty Guziec
Posty: 5
Rejestracja: 27 paź 2010, 18:25
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86_64

Re: [C++] Początki programowania na linuxie

Post autor: drwyspa »

Witajcie.
Zapewne dostanę baty za brak podstawowej wiedzy, ale jestem zupełnie zielony w Linuxie. Również uczę się programowania w C++ i korzystam z Code::Blocks. Rozpocząłem naukę od najprostszych przykładów z kursów, które wymieniliście. Używam komilatora GNU GCC Compiler i nie mogę odpalić skompilowanego pliku. Sama kompilacja jest udana, ale przy próbie odpalenia pliku wyskakuje mi brak dostępu. Wiem, to pewnie jakaś podstawowa wiedza i jeszcze raz przepraszam za moje braki, ale może pomożecie mi?
Z góry dziękuję i pozdrawiam
Awatar użytkownika
Szmitas
Zakręcona Traszka
Zakręcona Traszka
Posty: 572
Rejestracja: 28 lis 2006, 17:38
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86
Lokalizacja: Luboń
Kontakt:

Re: [C++] Początki programowania na linuxie

Post autor: Szmitas »

A w jakim katalogu zapisujesz pliki wynikowe?
www.ubuntu-pomoc.org - tutaj znajdziesz rozwiązanie każdego Twojego problemu.

Chcesz zostać Redaktorem ubuntu-pomoc.org? Skontaktuj się ze mną!
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 10 gości