Jdi na obsah Jdi na menu
 


Konstanty, proměnné,výrazy

8. 10. 2008

Konstanty, proměnné,výrazy

Jakou strukturu má program v jazyce C/C++?

Vložení hlavičkových souborů

Deklarace globálních proměnných a konstant

Deklarace a definice funkcí

Definice funkce main

Možné definice dalších funkcí

 

// Výpis pozdravu

 

#include <stdio.h>

#include <conio.h>

 

int main(){

printf("Ahoj"); //výpis textu

getch();

return 0;

}

 

 Co jsou klíčová slova (uveďte některá)

Základní slova jazyka. Mají speciální význam.

Nelze je použít jako identifikátory (jména proměnných, konstant, funkcí,…).

auto                 double             int                   struct  

break               else                  long                 switch            

case                 enum               register            typedef          

char                 extern              return              union  

const               float                short                unsigned        

continue          for                   signed                         void    

default                        goto                sizeof              volatile           

do                   if                     static               while  

K čemu slouží hlavičkové soubory?

Umožňují používat knihovní funkce.

Obsahují mimo jiné informace o knihovních funkcích (jejich tzv. prototypy) – např. stdio.h obsahuje mimo jiné informace o funkci printf.

Jak definujeme konstanty?

const typ jmeno=hodnota;

Příklad:

const float pi=3.14;

const – klíčové slovo

float – klíčové slovo – datový typ

pi – název konstanty

3.14 – hodnota konstanty

 

 Jaké typy konstant znáte?

Stejné jako datové typy: int, float, char, double

 Co je to konstantní řetězec?

Text v uvozovkách – např.: “Dobrý den”

 Co jsou escape sekvence a kde se využívají?

Posloupnosti uvozené „\“

Ty mohou být jednoduché, kdy opačné lomítko následuje jediný znak.

Nebo následuje osmičkový či  (po x) šestnáctkový kód znaku.

Tak jsme schopni zadat i znak, který se na klávesnici nenachází, ale jehož kód známe.

Přehled   escape sequencí obsahuje tabulka:

posloupnost   jméno                                     význam         

\a                     Alert (Bell)                            pípnutí          

\b                    Backspace                             návrat o jeden znak 

\f                     Formfeed                              nová stránka nebo obrazovka

\n                    Newline                                 přesun na začátek nového řádku

\r                     Carriage return                    přesun na začátek aktuálního řádku

\t                     Horizontal tab                       přesun na následující tabelační pozici

\v                     Vertical tab                           stanovený přesun dolů        

\\                      Backslash                              obrácené lomítko     

\'                      Single quote                          apostrof

\"                    Double quote                        uvozovky

\?                     Question mark                      otazník          

\OOO                                                             ASCII znak zadaný jako osmičková hodnota

\xHHH                                                           ASCII znak zadaný jako šestnáctková hodnota

 

Příklady využití některých escape sekvencí

     #include <stdio.h>

     #include <conio.h>

    

     int main(){

     printf("Ahoj "); //výpis textu

     getch();

     printf("\rNazdar"); //přesun na zač. řádku

     getch();

     printf("\rDobr\xEC den"); //výpis ý

     getch();

     return 0;

     }

 


Tabulka ASCII

 

 

21        !           22        "          23        #          24        $          25        %        26        &         27        '           28        (            29        )           2A       *

2B       +          2C       ,           2D       -           2E       .           2F        /           30        0          31        1          32        2            33        3          34        4

35        5          36        6          37        7          38        8          39        9          3A       :           3B       ;           3C       <            3D       =          3E       >

3F        ?          40        @        41        A         42        B         43        C         44        D         45        E         46        F            47        G         48        H

49        I          4A       J          4B       K         4C       L         4D       M        4E       N         4F        O         50        P            51        Q         52        R

53        S          54        T         55        U         56        V         57        W        58        X         59        Y         5A       Z            5B       [           5C       \

5D       ]           5E       ^          5F        _          60        `           61        a          62        b          63        c          64        d            65        e          66        f

67        g          68        h          69        i           6A       j           6B       k          6C       l           6D       m         6E       n            6F        o          70        p

71        q          72        r          73        s          74        t           75        u          76        v          77        w         78        x            79        y          7A       z

7B       {          7C       |           7D       }          7E       ~          7F                  80        Ç         81        ü          82        é            83        â          84        ä

85        ů          86        ć          87        ç          88        ł           89        ë          8A       Ő         8B       ő          8C       î            8D       Ź         8E       Ä

8F        Ć         90        É         91        Ĺ         92        ĺ           93        ô          94        ö          95        Ľ         96        ľ            97        Ś          98        ś

99        Ö         9A       Ü         9B       Ť         9C       ť          9D       Ł         9E       ×          9F        č          A0       á            A1       í           A2       ó

A3       ú          A4       Ą         A5       ą          A6       Ž         A7       ž          A8       Ę         A9       ę          AA      ¬            AB       ź          AC      Č

AD      ş          AE       «          AF       »          B0                B1                B2                B3                B4                   B5       Á         B6       Â

B7       Ě         B8       Ş          B9                BA                BB                BC                BD       Ż         BE       ż            BF                C0      

C1                C2                C3                C4                C5                C6       Ă         C7       ă          C8                   C9                CA     

CB                CC               CD               CE                CF       ¤          D0       đ          D1       Đ         D2       Ď            D3       Ë         D4       ď

D5       Ň         D6       Í          D7       Π         D8       ě          D9                DA               DB                DC                  DD      Ţ         DE       Ů

DF                E0       Ó         E1       ß          E2       Ô         E3       Ń         E4       ń          E5       ň          E6       Š            E7       š          E8       Ŕ

E9       Ú         EA       ŕ          EB       Ű         EC       ý          ED       Ý         EE       ţ           EF       ´           F0        ­            F1        ˝           F2        ˛

F3        ˇ           F4        ˘           F5        §          F6        ÷          F7        ¸           F8        °          F9        ¨          FA       ˙            FB       ű          FC       Ř

FD       ř          FE                 FF      

 

 


Psaní českých znaků :

 

A0 á    B5 Á    9F č    AC Č

D4 ď    82 é    90 É    D8 ě

A1 í    D6 Í    E5 ň    D5 Ň

A2 ó    E0 Ó    FD ř    FC Ř

E7 š    E6 Š    9C ť    9B Ť

A3 ú    E9 Ú    85 ů    DE Ů

EC ý    ED Ý    A7 ž

 

 Co jsou proměnné?

Pojmenovaná místa v paměti, do nichž můžeme ukládat hodnoty, které se během programu mohou měnit.

V jazyku C musí být všechny proměnné deklarovány.

Deklarace má tvar.

Typ_proměnné jméno_proměnné;

Jazyk C podporuje 5 základních typů dat (viz. otázku 12).

 

Jaké konvence musí splňovat jméno proměnné (identifikátor)?

Identifikátory jsou jména, která dáváme například proměnným, funkcím a typům  .

Identifikátor se musí lišit od kteréhokoliv klíčového slova.

Identifikátor je tvořen   posloupností alfanumerických znaků a podtržítka, přičemž   musí být splněny   následující podmínky:

prvním symbolem smí být písmeno nebo podtržítko

následuje libovolná kombinace písmen, číslic   a podtržítek

Jazyk C/C++ v identifikátorech rozlišuje malá a velká písmena (je tzv. „case sensitive“)

 Co jsou ukazatele?

Proměnné, které obsahují adresy jiných proměnných.

Jak lze do programu umístit komentář?

Komentáře jsou poznámky, které jsou překladačem ignorovány. Popisují význam příkazů – usnadňují orientaci v programu.

Víceřádkový komentář

/*

Toto je dlouhý komentář,

který zabírá

pět řádků.

*/

Jednořádkový komentář

printf(" Ahoj ");  // výpis řetězce

Komentář lze použít také pro dočasné vynechání řádků programu.

Jaké znáte základní typy dat ?

typ jmeno;

Typ                                                    Klíčové slovo             Formátová specifikace
Znak                                                              char                             %c

Celé číslo se znaménkem                               int                               %d      %x       %o

Desetinné číslo                                              float                            %f

Desetinné číslo s dvojnásobnou přesností     double                        %lf

Bez hodnoty                                                                                     void

Jak je v C a v C++ reprezentován typ Boolean?

V C jako int, přičemž:

pravda – true – nenulová hodnota

nepravda –false - nula

V C++ jsou zavedeny booleovské proměnné - dalším rozšířením jazyka C je datový typ  bool.

Typ bool může nabývat dvou hodnot true (logická 1), false (logická 0).

Nad datovým typem bool jsou definovány logické operace“

 && (logický and),
 || (logický or),

! (negace),

^ (logický xor).

Všechny logické operace, které lze použít v jazyce C v podmínkách.

Příklady:

 

#include <stdio.h>

#include <conio.h>

#include <windows.h>

 

main(){

int a=0;

bool b=true,c=false;

while(b){

     printf("Nazdar ");

     Sleep(100);

}

}

 

bool a;
bool b = true;
int c = 20;
bool d = ((c == 20) || ( c<=5));
a = !b;

if (a)
{
. . .
}

 

Co je to definice a deklarace proměnných?

Deklarace – uvedení typu proměnné (viz. otázka 12).

Více proměnných lze deklarovat pomocí seznamu:

float x,y,z;  // racionální proměnné

Definice – uvedení typu a hodnoty proměnné.

int a=0;  // celočíselné proměnné

// Výpis hodnot proměnných – funkce printf

 

#include <stdio.h>

#include <conio.h>

 

int main(){

 float x,y,z;

 int a=0;

 printf("%d", a);

 x=1;

 y=10.5;

 y=123.456;

 printf("%f %f %f", x,y,y);

getch();

return 0;

}

Parametry funkce printf jsou uvedeny v otázce 19.

 

Co jsou lokální a globální proměnné?

Proměnné lze deklarovat uvnitř funkce (lokální), nebo mimo všechny funkce (globální).

Lokální proměnné v jedné funkci nemají žádný vztah k lokálním proměnným v jiné funkci.

 

#include <stdio.h>

#include <conio.h>

int a=10,b=100;

main(){

int b=0;

printf("%d\n",a);

printf("%d\n",b);

printf("%d\n",::b);

}

 

 Jak provádíme přetypování proměnné (výrazu)– uveďte příklad!

Změna typu výrazu na požadovaný typ:

Př.:

float f;

int i;

f=(float)i;

 

#include <stdio.h>

#include <conio.h>

main(){

int a=1,b=2;

float c;

c=(float)(a+b)/2;

printf("%f\n",c);

}

 

Komentáře

Přidat komentář
Kontrolní kód Přehrát audio kód

Přehled komentářů

Zatím nebyl vložen žádný komentář
 

 

 

Z DALŠÍCH WEBŮ

REKLAMA