PROGRAMOWANIE – PRZYKŁADY
IDE C++ WinBGI C# Wpadki

Typy i operatory

Typy standardowe C++ Operatory C++ Priorytety op. C++ Typy standardowe C# Operatory C# Priorytety op. C#

Polecenia i skróty

Relo 2.0 Code::Blocks 17.12 Visual Studio 2017 Kontakt

Typy standardowe C++

Podstawowe typy danych języka C++, ich rozmiary w bajtach, zakresy wartości i symbole formato­wania, które mogą wystę­pować w standardowych funkcjach wejścia-wyjścia biblio­teki stdio, określa tabela:

Typ Rozmiar Zakres Format
char 1 –128 ÷ 127 %c
unsigned char 1 0 ÷ 255 %cu
short 2 –32768 ÷ 32767 %h
unsigned short 2 0 ÷ 65535 %hu
int 4 –2147483648 ÷ 2147483647 %d lub %i
unsigned int 4 0 ÷ 4294967295 %u
long 4 –2147483648 ÷ 2147483647 %ld lub %li
unsigned long 4 0 ÷ 4294967295 %lu
long long1 8 –9223372036854775808 ÷ 9223372036854775807 %I64 lub %lld
unsigned long long1 8 0 ÷ 18446744073709551615 %I64u lub %llu
float 4 –3.4x1038 ÷ 3.4x1038, 7–8 cyfr znaczących %f
double 8 –1.8x10308 ÷ 1.8x10308, 15–16 cyfr znaczących %lf
long double2 10 Co najmniej jak double %Lf lub %llf
char* Ciąg znaków zakończony znakiem '\0' (zerem) %s
bool 1 false lub true
void* Wskaźnik na daną typu nieokreślonego (pustego)

1 Brak w Borland C++ 5.5.

2 W przypadku niektórych kompilatorów rozmiar danych i ich maksymalne wartości mogą być inne, np. dla MinGW C++ wartość typu long double zajmuje 12 bajtów, a dla Visual Studio Community C++ 2017 dokładnie jak double, czyli 8 bajtów. Drobne rozbież­ności mogą również wystę­pować w symbolach formatowania.

Symbole formatowania umożliwiające zmianę postaci wprowa­dzanych lub wyprowa­dzanych wartości całkowitych:

Symbole formatowania umożliwiające zmianę postaci wyprowa­dzanych wartości rzeczywistych:

Operatory C++

Operatory arytmetyczne Przykład
+ Dodawanie lub plus unarny x + y lub +x
- Odejmowanie lub minus unarny (zmiana znaku) x - y lub -x
* Mnożenie x * y
/ Dzielenie x / y
% Dzielenie modulo (reszta z dzielenia) x % y
++ Zwiększenie o 1 (inkrementacja) przed lub po użyciu x++ lub ++x
-- Zmniejszenie o 1 (dekrementacja) przed lub po użyciu x-- lub --x
Operatory relacji Przykład
== Równe x == y
!= Różne x != y
< Mniejsze x < y
> Większe x > y
<= Mniejsze lub równe x <= y
>= Większe lub równe x >= y
Operatory logiczne Przykład
&& Koniunkcja (iloczyn logiczny) x && y
|| Alternatywa (suma logiczna) x || y
! Negacja !(x || y)
Operatory bitowe Przykład
& AND x & y
| OR x | y
^ XOR (różnica symetryczna) x ^ y
~ NOT ~x
<< Przesunięcie w lewo x << y
>> Przesunięcie w prawo x >> y
Operatory przypisania Przykład
= Przypisanie proste x = y
+= Dodawanie z przypisaniem (zwiększ o) x += y
-= Odejmowanie z przypisaniem (zmniejsz o) x -= y
*= Mnożenie z przypisaniem (pomnóż przez) x *= y
/= Dzielenie z przypisaniem (podziel przez) x /= y
%= Dzielenie modulo z przypisaniem (przypisz resztę z dzielenia przez) x %= y
<<= Przesunięcie w lewo z przypisaniem x <<= y
>>= Przesunięcie w prawo z przypisaniem x >>= y
& AND bitowe z przypisaniem x &= y
| OR bitowe z przypisaniem x |= y
^ XOR bitowe z przypisaniem x ^= y
Niektóre inne operatory Przykład
:: Kwalifikacja nazwy (operator zasięgu) std::cin
. lub -> Składowa klasy, struktury lub unii (operator członkowstwa) cout.width(4) lub p->q
sizeof Rozmiar zmiennej sizeof(x)
& Adres zmiennej &x
* Wskaźnik na zmienną *p
? : Wyrażenie warunkowe (x > y) ? x : y
, Wyrażenie przecinkowe x , y

Priorytety operatorów C++

Priorytet Grupa operatorów Łączność
1 ::
2 x++   x--   typ()   f()   x[]   .   ->
3 ++x   --x   +x   -x   !   ~   (typ)   *p   &x   sizeof
4 *   /   %
5 +   -
6 <<   >>  
7 <   >   <=   >=
8 ==   !=
9 &
10 ^
11 !
12 &&
13 ||
14 ? :
15 =   +=   -=   *=   /=   %=   <<=   >>=   &=   ^=   |=
16 ,

Typy standardowe C#

Język C# udostępnia szereg wbudowanych typów danych. Ich nazwy, rozmiar danych w bajtach, zakresy i synonimy w przestrzeni nazw System określa tabela:

Typ Rozmiar Zakres Synonim
sbyte 1 –128 ÷ 127 SByte
byte 1 0 ÷ 255 Byte
short 2 –32768 ÷ 32767 Int16
ushort 2 0 ÷ 65535 UInt16
int 4 –2147483648 ÷ 2147483647 Int32
uint 4 0 ÷ 4294967295 UInt32
long 8 –9223372036854775808 ÷ 9223372036854775807 Int64
ulong 8 0 ÷ 18446744073709551615 UInt64
float 4 ±3.4x1038, 7–8 cyfr znaczących Single
double 8 ±1.8x10308, 15–16 cyfr znaczących Double
decimal 16 –79228162514264337593543950335 ÷ 79228162514264337593543950335 Decimal
char 2 Pojedynczy znak (Unicode) Char
string1 Łańcuch znaków typu char String
bool 1 false lub true Boolean

1 Typ string jest typem referen­cyjnym, pozostałe typy wyszcze­gólnione w tabeli są typami wartościowymi. Zmiennej typu wartościo­wego przydzie­lany jest w momencie jej definio­wania obszar pamięci, w którym przecho­wywana jest wartość tej zmiennej. Zmiennej typu referen­cyjnego przydzie­lany jest jedynie obszar pamięci do przecho­wywania referencji wskazu­jącej na obszar pamięci obiektu danej klasy utworzo­nego za pomocą operatora new. Raczej trudno jest stwierdzić, jaki jest rozmiar obszaru pamięci zajmowanej przez obiekt.

Operatory C#

Operatory arytmetyczne Przykład
+ Dodawanie lub plus unarny x + y lub +x
- Odejmowanie lub minus unarny (zmiana znaku) x - y lub -x
* Mnożenie x * y
/ Dzielenie x / y
% Dzielenie modulo (reszta z dzielenia) x % y
++ Zwiększenie o 1 (inkrementacja) przed lub po użyciu x++ lub ++x
-- Zmniejszenie o 1 (dekrementacja) przed lub po użyciu x-- lub --x
Operatory relacji Przykład
== Równe x == y
!= Różne x != y
< Mniejsze x < y
> Większe x > y
<= Mniejsze lub równe x <= y
>= Większe lub równe x >= y
Operatory logiczne Przykład
&& Koniunkcja (iloczyn logiczny) x && y
|| Alternatywa (suma logiczna) x || y
! Negacja !(x || y)
Operatory bitowe Przykład
& AND x & y
| OR x | y
^ XOR (różnica symetryczna) x ^ y
~ NOT ~x
<< Przesunięcie w lewo x << y
>> Przesunięcie w prawo x >> y
Operatory przypisania Przykład
= Przypisanie proste x = y
+= Dodawanie z przypisaniem (zwiększ o) x += y
-= Odejmowanie z przypisaniem (zmniejsz o) x -= y
*= Mnożenie z przypisaniem (pomnóż przez) x *= y
/= Dzielenie z przypisaniem (podziel przez) x /= y
%= Dzielenie modulo z przypisaniem (przypisz resztę z dzielenia przez) x %= y
<<= Przesunięcie w lewo z przypisaniem x <<= y
>>= Przesunięcie w prawo z przypisaniem x >>= y
& AND bitowe z przypisaniem x &= y
| OR bitowe z przypisaniem x |= y
^ XOR bitowe z przypisaniem x ^= y
Niektóre inne operatory Przykład
. Składowa przestrzeni lub klasy (operator członkowstwa) Math.Sqrt(2)
sizeof Rozmiar typu danych sizeof(int)
typeof Typ klasy typeof(Math)
? : Wyrażenie warunkowe (x > y) ? x : y

Priorytety operatorów C#

Priorytet Grupa operatorów Łączność
1 x++   x--   f()   x[]   .
2 ++x   --x   +x   -x   !   ~   (typ)   sizeof
3 *   /   %
4 +   -
5 <<   >>  
6 <   >   <=   >=
7 ==   !=
8 &
9 ^
10 !
11 &&
12 ||
13 ? :
14 =   +=   -=   *=   /=   %=   <<=   >>=   &=   ^=   |=
15 ,

Polecenia Relo 2.0 z Borland C++

Ikona Skrót Opis
Ctrl+N Nowy projekt lub plik (New Project/File)
Ctrl+O Otwórz istniejący projekt lub plik (Open Project/File)
Ctrl+S Zapisz bieżący plik (Save)
F12 Zapisz bieżący plik jako (Save As...)
Zapisz wszystko (Save All)
Zamknij bieżący plik (Close)
Ctrl+Z Cofnij (Undo)
Ctrl+Shift+Z Ponów (Redo)
Ctrl+X Wytnij (Cut)
Ctrl+C Kopiuj (Copy)
Ctrl+V Wklej (Paste)
Alt+F9 Kompiluj bieżący plik (Compile)
Ctrl+F9 Zbuduj projekt (Make)
Przebuduj projekt, kompilując wszystkie jego pliki (Build)
F9 Uruchom projekt (Run)
Zbuduj projekt i uruchom go (Make+Run)

Polecenia Code::Blocks 17.12 z MinGW C++

Ikona Skrót Opis
Nowy plik (New File)
Ctrl+O Otwórz (Open...)
Ctrl+S Zapisz plik (Save file)
Alt+Shift+S Zapisz wszystko (Save everything)
Ctrl+W Zamknij plik (Close file)
Ctrl+Shift+W Zamknij wszystkie pliki (Close all files)
Ctrl+Z Cofnij (Undo)
Ctrl+Shift+Z Ponów (Redo)
Wytnij (Cut)
Kopiuj (Copy)
Wklej (Paste)
Ctrl+F9 Zbuduj projekt (Build)
Ctrl+Shift+F9 Kompiluj bieżący plik (Compile current file)
Ctrl+F10 Uruchom projekt (Run)
F9 Zbuduj projekt i uruchom go (Build and run)
Ctrl+F11 Przebuduj projekt, kompilując wszystkie jego pliki (Rebuild)

Polecenia Visual Studio Community 2017

Ikona Skrót Opis
Ctrl+Shift+N Nowy projekt
Ctrl+O Otwórz plik
Ctrl+S Zapisz
Ctrl+Shift+S Zapisz wszystko
Zamknij rozwiązanie
Ctrl+Z Cofnij
Ctrl+Y Wykonaj ponownie
Ctrl+X Wytnij
Ctrl+C Kopiuj
Ctrl+V Wklej
Del Usuń
Alt+F7 Właściwości projektu
Kompiluj projekt
F7 Kompiluj rozwiązanie
Ctrl+Alt+F7 Kompiluj ponownie rozwiązanie
F5 Rozpocznij debugowanie
Ctrl+F5 Uruchom bez debugowania

Opracowanie strony: lipiec 2018