Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Преобразование типов

Rusa


Если в выражениях встречаются операнды р&# 12412c29m 1072;зличных типов, то они преобразуются к общему типу в соответствии с небольшим набором правил. В общем, автоматически производятся только преобразования, имеющие смысл, такие как, например, преобразование целого в плавающее в выражениях типа f+i float



char int char int

atoi

atoi(char s[]) // Преобразование s в целое

Kак уже обсуждалось в главе 2, выражение s[i]-'0' имеет численное значение находящегося в s[i]символа, потому что значение символов '0', '1' и т.д. образуют возрастающую последовательность расположенных подряд целых положительных чисел.

char int lower lower возвращает его неизменным. Приводимая ниже программа справедлива только для набора символов ASCII.

lower(int c) // Преобразование прописных в строчные

Эта функция правильно работает при коде ASCII, потому что численные значения, соответствующие в этом коде прописным и строчным буквам, отличаются на постоянную величину, а каждый алфавит является сплошным - между a z нет ничего, кроме букв. Это последнее замечание для набора символов EBCDIC  систем IBM 370 оказывается несправедливым, в силу чего эта программа на таких системах работает неправильно - она преобразует не только буквы.

char char int (PDP-11, например) переменная типа char



Определение языка «C» гарантирует, что любой символ из стандартного набора символов машины никогда не даст отрицательного числа, так что эти символы можно свободно использовать в выражениях как положительные величины. Но произвольные комбинации двоичных знаков, хранящиеся как символьные переменные на некоторых машинах, могут дать отрицательные значения, а на других положительные.

eof

char c;

c getchar

if c eof

c всегда положительна, поскольку она описана как char eof int char getchar

int char getchar eof eof char int

i>j &&

isdigit = c >= '0' && c <= '9';

isdigit c if while for

преобразования.



char short int float double

double double double

long long long

unsigned unsigned unsigned

int int

float double; в языке «C» вся плавающая арифметика выполняется с двойной точностью.

int char

int i;

char c;

i = c;

c i

c

float i int

х = i;

i = х;

float int double float char



char short int float double int double char float

cast

sqrt double n

sqrt double n

sqrt n double

n n

htoi(s) f




Document Info


Accesari: 2753
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2025 )