[C++] Nagłówki, typy danych, standardy

kejkun7
Użytkownik
Użytkownik
Posty: 405
Rejestracja: 24 lip 2012, o 23:16
Płeć: Mężczyzna
Lokalizacja: hmm ?
Podziękował: 147 razy
Pomógł: 2 razy

[C++] Nagłówki, typy danych, standardy

Post autor: kejkun7 »

Afish pisze:Przy wprowadzaniu tworzysz nową zmienną przesłaniając oryginalną macierz.
Poza tym nie math.h, tylko cmath.
a czemu? Czym się roznia te dwie ??
Jesli dobrze kojarze, \(\displaystyle{ math.h}\) jest w \(\displaystyle{ C}\) , co oznacza, ze tutaj tez powinna działac
Ostatnio zmieniony 12 gru 2013, o 18:56 przez Afish, łącznie zmieniany 2 razy.
Powód: Wydzielenie dyskusji niezwiązanej z głównym tematem wątku http://www.matematyka.pl/351169.htm
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

[C++] Nagłówki, typy danych, standardy

Post autor: Afish »

Standard tak zaleca, porządny kompilator powinien zaprotestować po napotkaniu math.h. Ponadto C++ nie jest nadzbiorem C.
kejkun7
Użytkownik
Użytkownik
Posty: 405
Rejestracja: 24 lip 2012, o 23:16
Płeć: Mężczyzna
Lokalizacja: hmm ?
Podziękował: 147 razy
Pomógł: 2 razy

[C++] Nagłówki, typy danych, standardy

Post autor: kejkun7 »

czyli uważasz, że Code Blocks nie jest porządnym kompilatorem ? to jaki jest w takim razie ? .. ?
chodziło mi , że w c++, mozna uzyc rzeczy z C np.

Kod: Zaznacz cały

printf
Gouranga
Użytkownik
Użytkownik
Posty: 1590
Rejestracja: 16 maja 2013, o 17:56
Płeć: Mężczyzna
Lokalizacja: Trójmiasto
Podziękował: 11 razy
Pomógł: 246 razy

[C++] Nagłówki, typy danych, standardy

Post autor: Gouranga »

kejkun7, code blo0cks nie jest kompilatorem zacznijmy od tego
jest środowiskiem i tak się składa, że beznadziejnym
druga sprawa:
"standard tak zaleca"... c++ ma jakieś standardy? c++ to jeden wielki bajzel dla licealistów, których nie uczy się porządnego programowania, ponadto c++ to parodia języka, hybryda która nie jest ani proceduralna ani obiektowa, takie odpadki z wszystkiego co się dało zebrać razem
prawdziwi programiści używają edytora vim + kompilatora gcc + debuggera gdb i to wystarczy a te wszystkie środowiska code blocks, dev c++, eclipse i inne takie to dobre dla leszczy
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

[C++] Nagłówki, typy danych, standardy

Post autor: Afish »

kejkun7 pisze:czyli uważasz, że Code Blocks nie jest porządnym kompilatorem ?
Nie jest w ogóle kompilatorem.
kejkun7 pisze:chodziło mi , że w c++, mozna uzyc rzeczy z C np.

Kod: Zaznacz cały

printf
Można, jeżeli zrozumiałeś, że twierdzę inaczej, to przeczytaj moje wypowiedzi jeszcze raz.
Gouranga pisze:"standard tak zaleca"... c++ ma jakieś standardy?
Ma, za rok będzie kolejny. Polecam doczytać.
Gouranga pisze:c++ to jeden wielki bajzel dla licealistów, których nie uczy się porządnego programowania
:D Na szczęście świat się z Tobą nie zgadza.
Gouranga pisze:prawdziwi programiści używają edytora vim + kompilatora gcc + debuggera gdb i to wystarczy a te wszystkie środowiska code blocks, dev c++, eclipse i inne takie to dobre dla leszczy
xD Tego nie będę komentował.
kejkun7
Użytkownik
Użytkownik
Posty: 405
Rejestracja: 24 lip 2012, o 23:16
Płeć: Mężczyzna
Lokalizacja: hmm ?
Podziękował: 147 razy
Pomógł: 2 razy

[C++] Nagłówki, typy danych, standardy

Post autor: kejkun7 »

Gouranga pisze:kejkun7, code blo0cks nie jest kompilatorem zacznijmy od tego
jest środowiskiem i tak się składa, że beznadziejnym
druga sprawa:
"standard tak zaleca"... c++ ma jakieś standardy? c++ to jeden wielki bajzel dla licealistów, których nie uczy się porządnego programowania, ponadto c++ to parodia języka, hybryda która nie jest ani proceduralna ani obiektowa, takie odpadki z wszystkiego co się dało zebrać razem
prawdziwi programiści używają edytora vim + kompilatora gcc + debuggera gdb i to wystarczy a te wszystkie środowiska code blocks, dev c++, eclipse i inne takie to dobre dla leszczy
No dobra racja srodowiskiem, ale tez kompiluje i domyslnie mialem na mysli kompilator wbudowany w niego..

"c++ to jeden wielki bajzel dla licealistów, których nie uczy się porządnego programowania" piszesz takie rzeczy, ze nie wiem skad taki pomysl...
Gdybyś nie wiedział C++ akurat jest jednym z bardziej powazanych jezyków na rynku..
M.in ze wzgledu na Elastyczność. ( ma nawet Long Int, wskazniki : czego nie ma c#, itd..)..

"code blocks, dev c++, eclipse" . Z tego co wiem bardzo duzo osob lubi Eclipse jako srodowisko do javy. Code blocks sam tez lubie, ale to za czasów liceum. Ogolnie nie moge sie z Tb zgodzic, ze
" to dla leszczy " .
Ale sam nie jestem jakims wielkim PRO oczywiście.


"Ponadto C++ nie jest nadzbiorem C." chodziło mi oczywiście, ze wcale nie uwazam, ze tak jest.
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

[C++] Nagłówki, typy danych, standardy

Post autor: Afish »

kejkun7 pisze:No dobra racja srodowiskiem, ale tez kompiluje i domyslnie mialem na mysli kompilator wbudowany w niego..
CB bodaj wspiera większość popularnych kompilatorów, więc ciężko jest mi się odnieść do tego.
Jakkolwiek by nie było, nagłówki w C++ nie mają rozszerzenia .h, więc kompilator mógłby protestować (błędem lub ostrzeżeniem), dla dobra programisty.
kejkun7 pisze:ma nawet Long Int, wskazniki : czego nie ma c#, itd..
C# ma obie te rzeczy.
kejkun7
Użytkownik
Użytkownik
Posty: 405
Rejestracja: 24 lip 2012, o 23:16
Płeć: Mężczyzna
Lokalizacja: hmm ?
Podziękował: 147 razy
Pomógł: 2 razy

[C++] Nagłówki, typy danych, standardy

Post autor: kejkun7 »

"C# ma obie te rzeczy."
okej ?
to w jakims srodowisku ?
W Visual Studio 2013 nie ma long int.

"wskazniki" ma ?
no na pewno nie takie jak c++ !
chyba masz na mysli jakies nie jawne ?
Bo w C# nie ma takich zabaw z pamiecia (wskazywaniem na miejsce w pamieci) jak W C++
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

[C++] Nagłówki, typy danych, standardy

Post autor: Afish »

kejkun7 pisze: to w jakims srodowisku ?
W Visual Studio 2013 nie ma long int.


kejkun7 pisze: no na pewno nie takie jak c++ !
chyba masz na mysli jakies nie jawne ?
Bo w C# nie ma takich zabaw z pamiecia (wskazywaniem na miejsce w pamieci) jak W C++
kejkun7
Użytkownik
Użytkownik
Posty: 405
Rejestracja: 24 lip 2012, o 23:16
Płeć: Mężczyzna
Lokalizacja: hmm ?
Podziękował: 147 razy
Pomógł: 2 razy

[C++] Nagłówki, typy danych, standardy

Post autor: kejkun7 »

Afish pisze:
kejkun7 pisze: to w jakims srodowisku ?
W Visual Studio 2013 nie ma long int.


kejkun7 pisze: no na pewno nie takie jak c++ !
chyba masz na mysli jakies nie jawne ?
Bo w C# nie ma takich zabaw z pamiecia (wskazywaniem na miejsce w pamieci) jak W C++
O, pointera jeszcze nie uzywalem.
Co do LOng Inta, to pojechalem.
Chodzi O Long Double, którego można zadeklarowacw C++ , natomiast w C# już nie.
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

[C++] Nagłówki, typy danych, standardy

Post autor: Afish »

kejkun7 pisze:Chodzi O Long Double, którego można zadeklarowacw C++ , natomiast w C# już nie.
W istocie, w C# nie można. Tam jest za to decimal, który ma mniejszy zakres, ale większą precyzję.
Osobną kwestią jest, czy long double naprawdę coś wnosi? Na większości architektur i tak ma 64 bity.
Gouranga
Użytkownik
Użytkownik
Posty: 1590
Rejestracja: 16 maja 2013, o 17:56
Płeć: Mężczyzna
Lokalizacja: Trójmiasto
Podziękował: 11 razy
Pomógł: 246 razy

[C++] Nagłówki, typy danych, standardy

Post autor: Gouranga »

Afish, long double o ile wiem ma 64 bity i właśnie mniejszy zakres ze zwiększoną precyzją
więc decimal jest jego odpowiednikiem
co ważniejsze, wszystkie to super fajne rzeczy, którymi autor argumentuje wyższość c++ można zrobić w C
Fibik
Użytkownik
Użytkownik
Posty: 971
Rejestracja: 27 wrz 2005, o 22:56
Płeć: Mężczyzna
Lokalizacja: Wrocław
Podziękował: 11 razy
Pomógł: 75 razy

[C++] Nagłówki, typy danych, standardy

Post autor: Fibik »

C++ jest zbyt trudny nawet dla studentów... podobnie jaki i c.
W pełni obiektowy, uniwersalny język programowania, i plus mnóstwo bibliotek.

long double ma 80 bitów, i 64 bity precyzji.
Ale tego typu raczej nie należy używać jawnie w obliczeniach - to jest tym wewnętrzny FPU intelów.
Obecnie jest to już w zasadzie przeżytek - SSE2, czy już nawet avx zastępuje to stopniowo, zwłaszcza na 64 bitowych systemach (np. w windows 64 MS w ogóle rezygnują z FPU).
Afish
Moderator
Moderator
Posty: 2828
Rejestracja: 15 cze 2008, o 15:45
Płeć: Mężczyzna
Lokalizacja: Seattle, WA
Podziękował: 3 razy
Pomógł: 356 razy

[C++] Nagłówki, typy danych, standardy

Post autor: Afish »

Gouranga pisze:Afish, long double o ile wiem ma 64 bity i właśnie mniejszy zakres ze zwiększoną precyzją
Fibik pisze:long double ma 80 bitów, i 64 bity precyzji.
Rozmiar zależy od implementacji:
Co do precyzji, to trudno się wypowiadać, jeżeli nie musi nawet być zgodny z IEEE 754.
Gouranga pisze:więc decimal jest jego odpowiednikiem
Nie jest, decimal ma 128 bitów i wykonuje operacje zupełnie inaczej, aby wspierać obliczenia potrzebne w finansach.
Fibik
Użytkownik
Użytkownik
Posty: 971
Rejestracja: 27 wrz 2005, o 22:56
Płeć: Mężczyzna
Lokalizacja: Wrocław
Podziękował: 11 razy
Pomógł: 75 razy

[C++] Nagłówki, typy danych, standardy

Post autor: Fibik »

Afish pisze:
Fibik pisze:long double ma 80 bitów, i 64 bity precyzji.
Rozmiar zależy od implementacji:
Co do precyzji, to trudno się wypowiadać, jeżeli nie musi nawet być zgodny z IEEE 754.
10 bajtów, ale zaokrąglone do 12, z typowym ustawieniem data align do 4.
Dla align ustawione na 8 będzie tam 16.

1 + 15 + 64 = 80 bitów.
znak + eksponent + mantysa.

double ma chyba 52 bity na mantysę, ale 53 precyzji, bo najstarszy bit jest tam zawsze 1, więc go nie zapisujemy.
ODPOWIEDZ