-
21. Data: 2016-08-04 11:53:35
Temat: Re: Pytanko dotyczące C/C++
Od: "Grzegorz Niemirowski" <g...@p...onet.pl>
s...@g...com <s...@g...com> napisał(a):
> Otóż mam takie odruchowe wrażenie, ale wolę się upewnić. Piszesz, że
> należy trymać gwiazdki przy zmiennych. Należy, czy trzeba? Przepraszam,
> moje pytania mogą wydawać się irytujące, ale pytam zupełnie serio. Różne
> "ciekawe" historie przytrafialy mi się z wszelakimi narzędziami
> programistycznymi zarówno w hard i soft.
Spacje przy gwiazdkach nie mają znaczenia dla kompilatora. Natomiast w
przypadku
int *a, b;
lepiej nie robić odstępu po gwiazdce, bo dzięki temu lepiej widać, że a
będzie wskaźnikiem, a b nie. To tylko pomoc dla programisty i chyba nie ma
innych przypadków gdzie położenie gwiazdki coś zmienia.
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 8 days, 12 hours, 25 minutes and 7 seconds
-
22. Data: 2016-08-04 12:01:44
Temat: Re: Pytanko dotyczące C/C++
Od: "Grzegorz Niemirowski" <g...@p...onet.pl>
s...@g...com <s...@g...com> napisał(a):
> Dam ci radę: Przestań udzielać rad.
Naprawdę byłoby prościej, gdybyś sam się do dwóch prostych rad zastosował:
- mniej emocji i wulgaryzmów, więcej merytoryki
- jak pytasz o C/C++, to nie wrzucaj filozoficznych rozważań o Pascalu albo
co myślisz o składni C. Kogo to interesuje? To nawet nie jest grupa
programistyczna.
O tym, że nie lubisz składni C informowałeś już grupę wielokrotnie. Zamiast
jednak jako tako poznać w końcu to nieszczęsne C, to ciągle narzekasz na
jakieś pierdoły zamiast lepiej poznać filozofię tego języka. A potem się
dziwisz, jak ktoś Ci napisze że programowanie nie jest dla Ciebie...
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 8 days, 12 hours, 31 minutes and 31 seconds
-
23. Data: 2016-08-04 12:33:55
Temat: Re: Pytanko dotyczące C/C++
Od: Piotr Gałka <p...@c...pl>
Użytkownik <s...@g...com> napisał w wiadomości
news:29f17d21-b0b0-4c39-accb-5f6e2410660c@googlegrou
ps.com...
>> int *a, b;
>> int* a, b;
>> Zatem skoro * dotyczy tylko elementu tuż za znakiem, to przytulajmy go
>> doń,
>> na pewno zyskujemy na czytelności.
> Nie wiem gdzie zyskujemy na czytelności..
Serio nie widzisz różnicy w czytelności?
Patrząc na wszystkie deklaracje w taki sposób:
typ coś1, coś2, coś3...
i wszystkie coś-e muszą mieć typ równy typ.
Jak masz napisane:
int *a, b;
To od razu widzisz, że zarówno *a jak i b są typu int.
A jak napiszesz:
int* a, b;
to możesz myśleć, że zarówno a jak i b są typu int*, co nie jest prawdą.
Dlatego pierwszy zapis jest czytelniejszy, choć oba poprawne.
Ja piszę tak, aby nie mieć nigdy takich wątpliwości. Jak nie jestem na 100%
pewien, jak co kompilator zinterpretuje, to nie stosuję takiego zapisu.
Moje deklaracje wyglądają np. tak:
int i,j,m,n,c;
int *p;
int *s;
int t[10];
Kiedyś jak na całym ekranie mieściło się 25 linijek, a w środowisku typu
Turbo C++ okienko dla źródła miało jeszcze mniej to takie marnowanie linijek
mogło boleć, ale to już dawno za nami.
Poza tym mało kiedy funkcja ma tyle zmiennych.
> Gwiazdka w lewo, prawo, pośrodku, znaki zapytania gdziebądź, wykrzykniki
> itd, itp..
> Nosz kurwa, wolę w assemblerze mov a,b - przynajmniej wiadomo o co chodzi.
Nigdy nie pisałem w assemblerze, ale czy "mov a, b" nie zadziała tak samo
jak "mov a ,b"?
Jeśli tak to zapytam: Dlaczego odmawiasz * prawa do takiego samego
zachowania się jak , ?
Wydaje mi się, że dawniej wszystkie deklaracje musiały być na początku bloku
funkcji (a może każdego bloku). Możliwość deklaracji typu for(int
i=0;i<10;i++) została wprowadzona dla wygody programistów, ale nie ma
przymusu.
P.G.
-
24. Data: 2016-08-04 13:19:13
Temat: Re: Pytanko dotyczące C/C++
Od: Sebastian Biały <h...@p...onet.pl>
On 2016-08-04 08:41, Ghost wrote:
> int *a, b;
> i
> int* a, b;
> też są równoważne, ale z drugiej ktoś niedoświadczony (choć
> niekoniecznie) mógłby wywnioskować, że obie zmienne to wskaźniki.
Dlatego istnieją coding standardy, niektóre w sposób automatyczny
sprawdzane. Zazwyczaj istnieje jawny zakaz deklaracji po przecinku.
C/C++ to język o niezwykłych mozliwościach i miliardzie błedów do
popełnienia. Coding standardy zazwyczaj bazują na doświadczeniu zespołu
z takimi błedami i warto się rozejrzeć jak inni to robią.
-
25. Data: 2016-08-04 13:26:54
Temat: Re: Pytanko dotyczące C/C++
Od: "Ghost" <n...@d...pl>
Użytkownik napisał w wiadomości grup
dyskusyjnych:6c4fefdb-84c0-4b03-92e8-ef932f72f322@go
oglegroups.com...
>Należy, czy trzeba?
Należy z powodu głupich odruchów. Ale nie ma obowiązku
-
26. Data: 2016-08-04 13:28:48
Temat: Re: Pytanko dotyczące C/C++
Od: "Ghost" <n...@d...pl>
Użytkownik napisał w wiadomości grup
dyskusyjnych:596cf112-79ef-4538-a2e7-3702fe04030a@go
oglegroups.com...
W dniu czwartek, 4 sierpnia 2016 10:42:55 UTC+2 użytkownik Ghost napisał:
>
>> >Nie wiem gdzie zyskujemy na czytelności..
>
>> Programowanie nie jest dla ciebie :-) Niezależnie od języka.
> Jeżeli takie wnioski wyciągasz na podstawie mojego zdania dotyczącego
> czytelności żródła
tak
-
27. Data: 2016-08-04 18:05:54
Temat: Re: Pytanko dotyczące C/C++
Od: Marek <f...@f...com>
On Thu, 4 Aug 2016 02:26:14 -0700 (PDT), s...@g...com wrote:
> Dam ci radę: Przestań udzielać rad.
Akurat miał rację, z Twoich komentarzy faktycznie można wyciągać taki
wniosek. Spróbuj zająć się czymś innym, myślę że jest sporo innych
zajęć, które nie będą w Tobie wywoływać tyle frustracji.
--
Marek
-
28. Data: 2016-08-05 11:05:19
Temat: Re: Pytanko dotyczące C/C++
Od: "Ghost" <n...@d...pl>
Użytkownik "Grzegorz Niemirowski" napisał w wiadomości grup
dyskusyjnych:nnv3av$4m9$...@n...news.atman.pl...
s...@g...com <s...@g...com> napisał(a):
>> Otóż mam takie odruchowe wrażenie, ale wolę się upewnić. Piszesz, że
>> należy trymać gwiazdki przy zmiennych. Należy, czy trzeba? Przepraszam,
>> moje pytania mogą wydawać się irytujące, ale pytam zupełnie serio. Różne
>> "ciekawe" historie przytrafialy mi się z wszelakimi narzędziami
>> programistycznymi zarówno w hard i soft.
>Spacje przy gwiazdkach nie mają znaczenia dla kompilatora. Natomiast w
>przypadku
>int *a, b;
>lepiej nie robić odstępu po gwiazdce, bo dzięki temu lepiej widać, że a
>będzie wskaźnikiem, a b nie. To tylko pomoc dla programisty i chyba nie ma
>innych przypadków gdzie położenie gwiazdki coś zmienia.
W c? Np. w przypadku dzielenia.
-
29. Data: 2016-08-05 19:19:37
Temat: Re: Pytanko dotyczące C/C++
Od: "Grzegorz Niemirowski" <g...@p...onet.pl>
>> Spacje przy gwiazdkach nie mają znaczenia dla kompilatora. Natomiast w
>> przypadku
>> int *a, b;
>> lepiej nie robić odstępu po gwiazdce, bo dzięki temu lepiej widać, że a
>> będzie wskaźnikiem, a b nie. To tylko pomoc dla programisty i chyba
>> nie ma innych przypadków gdzie położenie gwiazdki coś zmienia.
> W c? Np. w przypadku dzielenia.
Poproszę przykład.
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 9 days, 19 hours, 55 minutes and 53 seconds
-
30. Data: 2016-08-05 20:25:12
Temat: Re: Pytanko dotyczące C/C++
Od: "Ghost" <n...@d...pl>
Użytkownik "Grzegorz Niemirowski" napisał w wiadomości grup
dyskusyjnych:no2hr7$558$...@n...news.atman.pl...
>>> Spacje przy gwiazdkach nie mają znaczenia dla kompilatora. Natomiast w
>>> przypadku
>>> int *a, b;
>>> lepiej nie robić odstępu po gwiazdce, bo dzięki temu lepiej widać, że a
>>> będzie wskaźnikiem, a b nie. To tylko pomoc dla programisty i chyba
>>> nie ma innych przypadków gdzie położenie gwiazdki coś zmienia.
>> W c? Np. w przypadku dzielenia.
>Poproszę przykład.
dla deklaracji
int *y;
a=4 /* y;
vs
a=4 / *y;
widać różnicę?