Informatyka I Wykład 4
description
Transcript of Informatyka I Wykład 4
Informatyka IWykład 4
Stałe Stałe liczbowe Stałe znakowe Stałe tekstowe
Jerzy Kotowski
Politechnika Wroclawska
var = 5L - 0xA;
-5
Stałe liczbowe typu zmiennopozycyjnego
double x; x=23; x=23.; x=2.3E1; notacja naukowa - scientific notation x=0.23e2; litera e może być duża lub mała x=230e-1; to wszystko oznacza to samo! int n = 2;
float x = 1/n;x = 1./n; RÓŻNICA!!!
Stałe znakowe Założenie: będziemy teraz coś podstawiać pod zmienną
zadeklarowaną jako np. char x; Wymuszenie zapisu stałej na 1 bajcie uzyskuje się przy
pomocy apostrofów:x='m'; zostanie podstawiony kod ASCII litery m.
American Standard Code for Information Interchanging 0-31 kody sterujące
32-127 znaki do wystukiwania na dalekopisie Extended ASCII standard IBM, 1 bajt, 256
możliwości
Stałe znakowe c.d.
Pomiędzy apostrofami może być bezpośrednio litera alfabetu lub też tak zwany opis znaku, który ma pos-tać \L.
L może być:1. literą o ustalonej wartości (literał znakowy o usta-lonej interpretacji)2. ciągiem od jednej do trzech cyfr ósemkowych3. ciągiem od jednej do trzech cyfr szesnastkowych poprzedzonych znakiem x lub X.
Literały znakowe o ustalonej interpretacji
‘\n’ nowy wiersz new line
‘\t’ tabulacja tabulation
‘\b’ cofnięcie backspace
‘\r’ powrót karetki carriage return
\f’ nowa strona form feed
‘\\’ backslash backslash
‘\’’ apostrof single quotation mark
‘\”’ cudzysłów double quotation mark
‘\a’ alarm alert
‘\0’ znak o kodzie 0 null character terminating null
Literały znakowe - przykłady Jak napisać Ala ma ‘kota’.? printf(“Ala ma \’kota\’.”); Jak napisać “c:\windows”? printf(“\”c:\\windows\””); Jaki będzie efekt instrukcji
printf(“c:\windows”); c:indows Jaki będzie (na ekranie komputera)
efekt instrukcji printf(“\nAla\nma\nkota”);
Alamakota
Ala ma kota
printf(“\n\rAla\n\rma\n\rkota”);
Stałe znakowe ósemkowe i szesnastkowe
Do obiektu typuchar x;
podstawiamy kod spacji (SPACE=32).
Stała liczbowa(2 bajty)
Stała znakowa(1 bajt)
x = 32; x = ‘ ‘;x = 040; x = ‘\40’;x = 0x20; x = ‘\x20’;
Stałe tekstowe Inna nazwa: łańcuch, stała łańcuchowa, string
printf("\nAla ma kota");
Stała łańcuchowa zajmuje w pamięci tyle miejsca co widać +1 bajt - terminating null
Argument funkcji printf: ADRES do początku stałej
Konwencja - wyprowadzanie do momentu natrafienia na znak końca łańcucha
Stała tekstowa z przykładu zajmuje 13 bajtów: 1+11+1.