Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Jak zacząć przygodę z programowaniem C++


Rekomendowane odpowiedzi

Opublikowano

jak nie chesz to nie dawaj żadnych spacji. Wszystko będzie działać..

 

np tak

 c=is.get();if(is.good())cout<<c;

 

tylko wątpię w czytelność tego

  • Odpowiedzi 142
  • Dodano
  • Ostatniej odpowiedzi
Weteran
Opublikowano

Czekam na coś o Qt i wxWidgets.

Myślę że w takim FAQ nie powinno być rzeczy związanych z zewnętrznymi bibliotekami, lepiej niech będzie "czyste" c++. Nie należy dyskryminować reszty bibliotek, a o wszystkich nie sposób napisać.

 

A po za tym Qt jest bardzo łatwą biblioteką(przyjmując że potrafisz odnaleźć się w oop). ;]

Opublikowano

no bo te line to program on je czyta bo bez nich nie ma programu a wiec jak ich nie bedzie czytac to jak ma dzialac program... bez kodu ( jest kod ale go nie widzi bo nie ma spacji) a ja wlasnie tej spacji nie ogarniam czy tam odstepu

Opublikowano

skoro dla Ciebie ciężkie do zrozumienia jest to, że w tym wypadku spacje nie mają żadnego znaczenia to odpuść sobie programowanie i zajmij się humanistyką

Opublikowano

dobra jestem zielony i spytam sie ciebie

c = is.get();	  
if (is.good())
  cout << c;

te spacje maja cos do tego? bo niewiem np pisze cos i niewiem ile tego dac kiedy dac itp bo te spacje sie same nie robia wiec problem troche

ale chodzi mi oto czy program bedzie dzialac i wy jaki sposob masz wiedziec kiedy to dac a kiedy nie i ile?

 

Nie rozumiem pytania.

Program będzie działać, jeśli będzie napisany poprawnie.

Wiedza jak pisać poprawnie programy nazywana jest informatyką. Zdobywa się nią czytając kursy, tutoriale i dokumentacje. W skrócie: RTFM.

Jeśli chodzi o spacje, jeśli będziesz je "stawiał" po wszystkich identyfikatorach, słowach kluczowych i typach - będzie dobrze.

 

W szczególności,

 intzmienna;

Jest błędem intuicyjnym, gdy powinno być

 int zmienna;

(spacja między typem a identyfikatorem)

 

Podobnie

 classMojaKlasa 

Jest błędem intuicyjnym, gdy powinno być

 class MojaKlasa 

( spacja pomiędzy słowem kluczowym a identyfikatorem ).

 

Jest to zagadnienie tak intuicyjne, iż nie jestem nawet w stanie dokładnie sprecyzować, czego wymaga standard.

 

Chodzi mi o to, że jeśli będzie gdziekolwiek spacji brakowało, będzie to brak tak rażący, że nawet zupełny początkujący zorientuje się, że dany kawałek kodu nie ma prawa zadziałać.

W innych wypadkach - spacja nie jest konieczna. Nigdy też spacji nie może być "za dużo". Te nieistotne są ignorowane.

 

Jeślibyś się więc w którymkolwiek momencie zastanawiał, czy powinna gdzieś być spacja - dla swojego świętego spokoju umieść tam tę spację.

 

Czekam na coś o Qt i wxWidgets.

 

Kiedy coś o tym napiszesz? ^^

 

Jak mi się będzie chciało ;]

Na razie muszę i tak porządnie przepisać to, co jest do tej pory napisane. Dodać obrazki ( tj. linki do ston z obrazkami ), kursy na YT itd.

 

Myślę że w takim FAQ nie powinno być rzeczy związanych z zewnętrznymi bibliotekami, lepiej niech będzie "czyste" c++. Nie należy dyskryminować reszty bibliotek, a o wszystkich nie sposób napisać.

 

A po za tym Qt jest bardzo łatwą biblioteką(przyjmując że potrafisz odnaleźć się w oop). ;]

 

Dyskryminacja to słowo kluczowe całego tego FAQ. Planuję go przepisać... Ale najpierw muszę lepiej zapoznać się z innymi IDE ( tak! C::B przestało mi wystarczać ).

O zewnętrznych bibliotekach NA PEWNO będzie, bo to jakby esencja sensu nauki C++ i główny powód, dla którego napisałem tego Tut'a.

"Potrafisz napisać program, który wypisze na konsolę wszystkie liczby pierwsze mniejsze od stałej Filiberta? Chciało ci się?!"

"Napisałeś program, który skataloguje mi muzykę i filmy na kompie? Gdzie go mogę ściągnąć?"

 

 

Wszakże od początku mojej nauki C++ ( a przenosiłem się z AutoIt'a ) marzyłem o czymś tak prostym, jak rozwiązanie AutoIt'owe.

No i znalazłem. Tylko lepsze.

 

Po tym dzisiejszym feedback'u może nawet wezmę się do roboty ;]

Ta sygnatura jest pusta.

Opublikowano

jak mowilem jestem zielony a sorry ze nie umiem wytlumaczyc ale nie mieszkam w polsce i nie zajmuje sie nim....

chodzi mi o te spacje

	c = is.get();	
	  cout << c;

przed slowami czyli ______c = is.get _ to sa spacje i ote spacje mi chodzi a nie o takie jak

intzmienna;

intzmienna;

 

to wiem ze musze spacje dac.....

  • 3 tygodnie później...
Opublikowano

w code blocks mam maly problem po wpisanu

#include <cstdio>
int main()
{
printf( "Test dzialania Code::Blocks" );
return 0;
}

i ctrl+f9 jak jest w kursie nie wysakuje mi nic na bulid logu a powinno byc oco kaman?

Opublikowano

po czym sądzisz że nie jest to c++?

Ja tu widzę charakterystyczny plik nagłówkowy....

Cytat

 

Orientacja seksualna polega na tym, że jeden mężczyzna lubi blondynki, drugi szatynki, że jedna pani woli umięśnionych mężczyzn a inna chudych intelektualistów. Homoseksualizm nie jest orientacją jest chorobą za którą homoseksualiści nie ponoszą odpowiedzialności. Pewna grupa ludzi rodzi się upośledzona fizycznie, na przykład bez ręki ale czy to znaczy, że wszystkim zdrowym powinniśmy też obcinać ręce? Nie, powinniśmy zapewnić im protezy. Obowiązkiem państwa jest zapewnienie homoseksualistom, jak wszystkim upośledzonym fizycznie czy psychicznie profesjonalnej opieki medycznej.

Opublikowano

zacytuje tu post agrr i innego temtu bo nie chce mi się pisać

Settings > Compiler and Debugger

 

Zaznacz GNU GCC Compiler

zakładka Toolchain Executables > Compiler's Instalation Directory uzupełniasz "C:\Program Files (x86)\CodeBlocks\MinGW" ( wg. tego, co napisałeś, że gdzie zainstalowałeś )

Następnie sprawdzasz, czy wszystkie .exe'ki poniżej są poprawnie poustawiane ( C compiler, C++ compiler, linker for dynamic libs i tak dalej - domyślne ustawienie jest poprawne, chodzi mi tylko o to, żebyś powiedział, czy cokolwiek tam jest )

 

Następnie wyczyść wszystkie path'y jakie masz ustawione w search directories.

 

Jeśli wciąż nie będzie działać:

 

W Search Directories dodaj następujące ścieżki:

Compiler: C:\Program Files (x86)\CodeBlocks\MinGW\include

Linker: C:\Program Files (x86)\CodeBlocks\MinGW\lib

 

to nie jest c++

to może być zarówno c++ jak i c

Opublikowano

@Sopelek, Xaulin

To jest C++. W C wszystkie nagłówki mają rozszerzenia .h. W C++ nagłówki z C wyglądają <c(nagłówek)> i nie mają rozszerzenia.

 

@natan

Wklejaj build logi.

Jaką wersję MinGW masz zainstalowaną?

Czy wszystko w Settings > Compiler and Debugger jest poprawnie skonfigurowane?

Ta sygnatura jest pusta.

Weteran
Opublikowano

Bardziej mi chodziło o to, że ta biblioteka jest wzięta z c(stdio)

W c++ standardową biblioteką input/output jest iostream, chociaż bodajże w cstdio jest jeszcze kilka funkcji, których w iostream nie ma, dlatego jest czasami używana również w c++. Natomiast ja w nowych tutorialach/książkach nigdy się nie spotkałem z użyciem tej biblioteki.

Opublikowano

2xup wszytko pobralem od ciebie i kolega na code block nie mial tego problemu a ma ta sama wersje code 10.5 a co do setting robilem jak 4xup podal

  • 2 miesiące temu...
  • 1 miesiąc temu...
Opublikowano

Hej,

 

widzę że pisząc ten FAQ, próbujesz uchodzić za autorytet.

 

 

 

C jest wolniejsze.

C jest nastawione na popełnianie błędów.

C jest trudniejsze.

C operuje na niższym poziomie abstrakcji.

 

Nie ma najmniejszego sensu uczenia się C. Są to dwa zupełnie różne języki, w których te same problemy rozwiązuje się na zupełnie różne sposoby.

Jedyne podpobieństwo między nimi to podstawowa składnia. Na tym podobieństwa się kończą.

 

To nie jest punkt nastawiony na dyskurs. Możecie się nie zgadzać, możecie spamować w tym wątku. Wasze protesty nie zostaną wysłuchane, a powyżej przedstawiłem stan faktyczny.

 

Wszyscy fani C, widzący w nim "niskopoziomowość", "oszczędność" i "szybkość" (cokolwiek miałoby to znaczyć) niech wrócą do programowania pralek i mikrofalówek, podczas gdy my zajmiemy się czymś bardziej konkretnym.

 

 

Pisząc to też najwyraźniej próbujesz narzucić nam swój światopogląd.

 

Ja zamiast dyskutować, gdyż nie jestem godzien dyskutować z takim autorytetem jak Ty, wkleję pewien cytat jeszcze większego autorytetu. I nawet nie po to by z tobą polemizować.

 

Robię to po to by być może początkujący, którzy mało jeszcze wiedzą, i są podatni na takie narzucanie im swoich poglądów przez kogoś takiego jak Ty (mpc coders team itd) wiedzieli że istnieje alternatywa co to Twoich twierdzeń na temat języka C.

 

Przechodząc do sedna:

[...]

Perharps this will come as surprise to you, but all my experience tells me that OOP is not as good as main software vendors try to sell. It is really good if you write small application performing standard functions. For a big weird project (and OllyDbg is a big weird project) OOP gives no real improvements in development time, errors in components are very hard to locate and even harder to correct. And - contrary to what vendors tell us - OO programs are usually slow. Stop crying, this is only my opinion, albeit proved by all my experience in the last 15 years or so.

[...]

----

OllyDbg Plugin API v1.10

// Pogrubienia dodane przeze mnie.

Oleh Yuschuk

Zamykam temat, bo autor nie trzyma poziomu.

....

Polityka forum zakazuję nam zamykać tematy, tylko dlatego, że są na niskim poziomie.

I lold.
Opublikowano

Tak, wiem, to jest tragicznie napisane i trzeba to solidnie zrefreshować...

Pisałem to pół roku temu i od tamtego czasu zdążyłem się już trochę więcej naumieć w tym temacie...

 

- - - -

 

Jeśli nie będziemy polemizować, zostaje nam tylko przerzucanie się cytatami, więc... proszę:

http://www.parashift.com/c++-faq-lite/big-picture.html#faq-6.5

 

Natomiast co do powyższego:

Wydaje mi się, że nazwa każdego paradygmatu wstawiona w miejsce wyżej pogrubionego "OOP" będzie tworzyła zdania sensowne i prawdziwe (z pewnego punktu widzenia).

Functional programming gives no real improvements in development time, errors in components are very hard to locate and even harder to correct.

Imperativfe programming gives no real improvements in development time, errors in components are very hard to locate and even harder to correct.

 

I tak dalej... To zawsze będzie prawdziwe, to zawsze, tak długo, jak będziemy na tyle roztropni, by twierdzenie skwitować "this is only my opinion".

 

Co do "usually slow":

Narzut OOP to wyłącznie odwołania do v-table; najczęściej pomijalny - jeśli faktycznie stanowi to wąskie gardło to i tak musisz pisać w assemblerze...

Natomiast C++ często jest szybsze.

Ta sygnatura jest pusta.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...