IPB

Witaj Gościu ( Zaloguj | Rejestruj )



[C/C++] parę pytań i odpowiedzi
post 08.02.2006 - 15:53
Post #1





Grupa:
Postów: 0
Dołączył: --
Nr użytkownika: 0

Ostrzeżenie: (0%) -----


1.Typy zmiennych i ich zastosowanie w języku C++

Każdy język programowania operuje na stałych i zmiennych. W C++ dostępne są następujące podstawowe typy danych:
int -typ całkowity(liczba całkowita), dozwolone dla niej modyfikatory to long (długa), short (krótka), signed (ze znakiem) i unsigned (bez znaku). Zależnie od architektury komputera i naszej wersji C, typ ten może zająć 2, 4 lub więcej bajtów pamięci
char -zmienna znakowa zajmuje 1 bajt pamięci komputera znak, prosty, elementarny typ. Jest stosowany do przechowywania niewielkich liczb (!) naturalnych (0-255) oraz znaków. Stanowi podstawę istnienia łańcuchów znakowych, używanych do przechowywania napisów.
float - liczba rzeczywista, zmiennoprzecinkowa, służy do reprezentacji liczb niecałkowitych, możliwe jest zastosowanie modyfikatora long, zajmuje 4 bajty pamięci (zależnie od architektury maszyny - 4, 8, itp.). typ zmiennopozycyjny pojedynczej precyzji
double - typ zmiennopozycyjnny podwójnej precyzji liczba rzeczywista podwójnej precyzji, nie wdając się w szczegóły, można za pomocą takich liczb przedstawić wartości o wiele większe (rzędu 104000) lub bliższe zeru (mniejsze - rzędu 10-4000) niż w przypadku float
void - typ pusty
Typy złożone:
Typ tablicowy int[],char[]
Klasy (klasy struktury i unie)
enumeratory (wyliczenia)
Modyfikatory:
Unsigned - bezznakowe
Signed - znakowe (domyślne)
Short - krótkie
Long - długie


2.Operatory stosowane w programowaniu w języku cc++

OPERATORY MATEMATYCZNE:
+ dodawanie
- odejmowanie
* mnożenie
/ dzielenie (przy dzieleniu liczb całkowitych wynikiem jest również liczba całkowita)
% dzielenie modulo (wynikiem dzielenia liczb całkowitych jest reszta)
++ inkrementacja jest to zwiększenie wartości zmiennej o jeden
-- dekrementacja zmniejszenie wartości zmiennej o jeden

Operator inkrementacji jak i dekrementcji może być użyty przyrostkowo lub przedrostkowo i tylko przy zmiennych typu całkowitego

OPERATORY RELACYJNE:
Operatory te porównuja wartość operatorów i zwracaja wynik typu BOOL czyli prawda lub fałsz.
> większy
< mniejszy
>= większy równy
<= mniejszy rowny
== równy
!= nierówny

OPERATORY LOGICZNE:
&& koniukcja (inaczej i)
|| alternatywa (lub)
! negacja (nie)

Operatory te służą do łączenia wyrażeń logicznych.

OPERATORY BITOWE:
& koniukcja bitowa
! alternatywa bitowa
^ bitowa różnica symetryczna
~ dopełnienie jedynkowe
>> przesunięcie bitowe w prawo
<< przesunięcie bitowe w lewo

3.Funkcje iteracyjne,kryteria doboru
Do instrukcji iteracyjnych zaliczamy następujące pętle:
a) while
b)do while
c)for

WHILE
postać ogólna:
while(war_logiczny)
{............
.............
............}
W pętli tej najpierw oblicza się warunek logiczny. Jeśli wartość jest różna od zera to wykonuje się instrukcję, a następnie oblicza się wyrażenie. Ten cykl powtarza się do chwili, w której wartość wyrażenia stanie się zerem.

DO WHILE

Składnia funkcji do while jest następująca:
do
{ instrukcja
..........
.......... }while(wyrażenie czyli war_log);

Najpierw wykonuję się instrukcje, a następnie oblicza wyrażenie .Jeśli jest prawdziwe, to ponownie wykonuje się instrukcję itd. Pętla zostanie zatrzymana wtedy, kiedy wyrażenie stanie się fałszywe.
Instrukcja do while wykorzystywana jest w sytuacji gdy wymagane jest co najmniej jednego przejścia pętli.

FOR
for(wyr1;wyr2;wyr3)
instrukcja

Wszystkie trzy składniki są wyrażeniami. Najczęściej wyr1 i wyr3 są przypisaniami lub wywołaniami funkcji, a wyr2 jest wyrażeniem warunkowym. Jeśli brak warunku wyr2 to przyjmuję się że jest on zawszę prawdziwy a więc jest pętlą nieskończoną. W instrukcji for pierwsze podwyrażenie oblicza się tylko raz; jest to część inicjująca stan pętli. Drugie wyrażenie musi mieć typ arytmetyczny lub wskaźnikowy; jest ono obliczane przed każdym przebiegiem pętli i jeśli stanie się zerem, to wykonanie instrukcji for zostanie przerwane. Trzecie wyrażenie obliczane jest po każdym przebiegu pętli i określa zmianę stanu pętli.

4.Funkcje warunkowe stosowane w programowaniu języka c++
Funkcje warunkowe wykorzystywane są w sytuacjach gdy chcemy dokonać wyboru jednej z dwóch opcji lub więcej. Warunkiem wyboru jest uzyskanie wartości logicznej prawda(TRUE) lub fałsz(FALSE).Najczęściej stosowaną instrukcją jest instrukcja warunkowa IF
Postać ogólna:
IF('warunek logiczny');
{
blok instrukcji
}

5.Deklarowanie stałych w języku c/c++

Za pomocą słowa const lub makra #define

6. Wskaźniki i ich rola w programowaniu

Wskaźnikiem nazywamy zmienną wskazującą na inną zmienną pamięci.
Typ wskaźnika powinien odpowiadać typowi zmiennej wskazywanej.
Stosowane są dwa operatory wskaźnikowe * &,wskaźniki pozwalają na przekazywanie parametrów i zwracanie nieokreślonej liczby parametrów.
Wskaźniki są wykorzystywanie do przekazywania parametrów do funkcji i zwracania wartości przez funkcję.

7.Rekurencje i referencje C/C++

Referencje- zmienne referencje są pokrewnymi zmiennych typu wskaźnikowego muszą być inicjowane w miejscu deklaracji. Najlepiej zmiennymi tego samego typu. Zmienne referencyjne są to synonimy innych zmiennych. Zmienne tego typu wykorzystywane są do przekazywania parametrów do funkcji i zwracania wartości przez funkcję.

Postać ogólna:
typ zmienna_z;
typ&zmienna_ref=zmienna_z;
Rekurencja- funkcje wywołują same siebie. Wykorzystywane są np. do obliczenia silni

8.Struktury i unie: deklaracja i definiowanie typów i zmiennych

Struktury- są to typy zmiennych złożonych które mogą zawierać zmienne typów prostych i złożonych. Struktury wykorzystywane są do definiowania właściwości różnych obiektów.
np. obiekt Monika można zdefiniować adres, wzrost, wiek.

Unie- opisywać można tą samą definicją co struktury z tą różnicą że w unii można zainicjować wyłącznie jedną z istniejących pól.
Unie wykorzystywane są do def właściwości innych obiektów.

9.Typy i znaczenie podziału na sekcje pól klasy w programowaniu

Pola te mogą być umieszczone w trzech sekcjach:
PRIVATE - sekcja prywatna ustawiona domyślnie. Pola tej sekcji są dostępne wyłącznie dla metod tej klasy oraz dla klas zaprzyjaźnionych friend
PROTECTED - sekcja chroniona dostęp do pól tej sekcji mogą mieć poza metodami własnej klasy metody klas dziedziczonych
PUBLIC - dostęp do tej sekcji uzyskujemy w sposób typowy np: dla struktur czyli przy użyciu operatora kropi
nazwa_obiektu_klasy.nazwa_pola

10.Mechanizm tworzenia i niszczenia obiektów klas w programowaniu w języku C++

Konstruktory służą do tworzenia obiektów klas. Typ konstruktora musi odpowiadać właściwością obiektu. Jeżeli do obiektu nie jest przekazywany żaden parametr, obiekt ten zostanie utworzony przez konstruktor bezparametrowy.
Z destruktorów korzystamy wtedy gdy chcemy cofnąć, usunąć, zniszczyć obiekty danej klasy. Destruktor może być wywołany jawnie.

11.Co to jest klasa( w języku programowania)?

Klasa stanowi szablon w którym definiujemy strukturę obiektu: dane i metody. Definicje klasy rozpoczynamy słowem kluczowym class, dalej nazwa klasy. Później deklarujemy zmienne(dane).Metody definiowane są poza definicją klasy.
Klasa - jest typem zmiennych umożliwiających umieszczenie w jednym miejscu właściwości opisujących obiekt oraz metod operujących na tych polach.

Postać ogólna klasy:
class nazwa_typ_klasy

12.Naczym polega dziedziczenie w technice programowania C++, rodzaje?

Dziedziczenie polega na przekazywaniu cech obiektom potomnym.
W programowaniu C++ występują dwa rodzaje dziedziczenia: proste(przypadek dziedziczenia liniowego ,klasa bazowa -> pochodna -> klasa pochodna -> itd.)
dziedziczenie złożone gdy klasa pochodna dziedziczy cechy od kilku klas bazowych równolegle:
klasa bazowa 1
klasa bazowa 2
klasa bazowa 3 klasa pochodna
.............
.............
klasa bazowa n

Klasa pochodna im niżej hierarchii tym jej funkcjonalność wzrasta. Związane jest to z tym, że klasa pochodna dziedziczy wszystkie cechy klas bazowych( z wyłączeniem konstruktorów i destruktorów) i ponad to jest wzbogacana o cechy przypisane tylko tej klasie.

Zaznaczam, że nie jestem autorem tekstu, jednak został wykorzystany za jego zgodą.
Go to the top of the page
 
+Quote Post

Posty w temacie
yojo2   [C/C++] parę pytań i odpowiedzi   08.02.2006 - 15:53


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



Wersja Lo-Fi Aktualny czas: 08.09.2010 - 23:20