Променливи в Б обява инициализация, видове, изпълнение и обхват

Редица други думи, които са специфични за тази версия на компилатора, например досега. в близост. малка. огромен. ASM. asm_ т.н.

Например, правилната идентификатори






а, _, _1_, Sarkasm, a_long_variable, aLongVariable, var19, defaultX, char_type
фалшив
1а, $ стойност, а-дългосрочен стойност, късо

C - малки и големи букви език. Променливи на име А и, или и край до край, или perfectDark и PerfectDarK - е различни променливи.

типове променливи

Т ype променлива определя
  • 1) вариабилен Размер в байтове (брой на байтовете на памет, за да разпределят за съхранение на компютърни стойности)
  • 2) Въвеждане на променливата в паметта (като бита в специална зона памет ще се намира в двоична форма).
Би Би Си са няколко основни типа. Ние ги разделят на две групи - цели числа и числа с плаваща запетая.
  • овъгляване - размер от 1 байт. Винаги! Необходимо е да се помни.
  • Накратко - 2 байта
  • INT - 4 байта
  • дълги - 4 байта
  • дълго, дълго - с размерите на 8 байта.
Тя трябва да направи точка. Размерът на променливите в Б не е дефинирано ясно, тъй като размера в байтове. Стандартът уточнява само, че

овъглявам <= short <= int <= long <= long long

Сега нека да определят минималния и максималния брой, който може да съхранява променлива от всеки тип. Номера могат да бъдат или положителни или отрицателни. Отрицателните числа се използват за съхранение на един бит знак. Понякога подпише нужди (например, магазин, банкова сметка, температура, координира и т.н.), а понякога и не е необходимо (тегло, размер на масива, възрастта на лицето и т.н.). За да направите това, използвайте модификатор В подписан и неподписан. грозен Чар - всичките 8 бита на редица, общо имаме набор от числа 00000000-11111111 в двоичен вид, това е, 0-255 знаковият символ от -128 до 128. променливи по подразбиране SI подписан. Затова записва Чар и знаковият символ еквивалент.

Tab. 1 Размер на видове число в Б.

Би Би Си е операторът, който ви позволява да получите размера на променливата в байтове. sizeof променлива или sizeof (променлив) или sizeof (тип). Той е на оператора, тъй като функцията не е в състояние да се получи информация за размера на типа по време на изпълнение. Напиши една малка програма, за да се уверите, че променлива размер.

(Мисля, че е ясно, че променливи могат да имат всеки валиден име). Тази програма може да пише и по-лесно

Би Би Си е един и същ вид може да има няколко имена
кратки === кратко вътр
дълго === дълго вътр
дълго, дълго, дълго, дълго === вътр
неподписан вътр === неподписан

Плаваща запетая Типове

Tab. 2 вида Размер плаваща точка си.

Броят на значещи цифри на мантисата

1.175494351 Е - 38

3.402823466 Е + 38

1,7976931348623158 Е + 308

препълване променливи

Би Би Си не е вследствие на преливане на променливи. Това означава, че непрекъснато се увеличава стойността на, да речем, едно цяло число в края на краищата ние "рестартира стойност"

Като цяло, поведението на променливата преливната се определя само за неподписани видове. Стойност без знак за нулиране. За другите видове могат да се случат навсякъде, и ако имате нужда от sledat на преливник, го правят ръчно, проверка на аргументите или да използват други методи, в зависимост от съставител и процесорната архитектура.







наименование тип Postfix

W кокошка работа с числа с помощта на броя на знаците в края изрично посочи своя тип, например
  • 11 - броят на тип Int
  • 10и - неподписан
  • 22L или 22L - дълго
  • 3890ll или 3890LL - дълго дълъг (и мкл или LL)
  • 80.0f или 80.f или 80.0F - поплавък (задължително присъствие на десетична точка във вписването)
  • 3.0 - броя на тип двойно
Показна нотация е и по подразбиране се обозначава броя на двойното тип.

На следващия код, обаче, няма да доведе до грешки, защото там е косвена тип реализация

Шестнадесетично и осмична

По време на работа с числа, можете да използвате шестнадесетичен и осмична формат. Числата в шестнайсетична система започва с 0x, осмична система от нулата. Съответно, ако броят започва с нула, а след това не трябва да има повече от 7 цифри:

В експоненциална форма на представяне на номера

E ksponentsialnoy нарича представяне на изображение на брой М д ± стр. където М - Богомолка номера, р - мощност на десет. В този случай трябва да бъде Mantis, която не е нулев знак преди десетичната запетая.
Например 1.25 === 1.25e0, 123.5 === 1.235e2, 0,0002341 === 2.341e-4 и т.н.
Представителства 3.2435e7 еквивалент 3.2435e + 7
Suschestveut и други представителство ( "техника"), в който степента трябва да се дели на три. Например 1.25 === 1.25e0, 123.5 === 123.5e0, 0,0002341 === 234.1e-6, 0.25873256 === 258.73256e-3 и т.н.

Променливите са обявени в Б са винаги в началото на блока (блок - код част граничи с тиранти)

Можете да декларирате няколко променливи от един и същи вид, имената на разделяне точка

Има декларирани променливи а и б в главната функция. и променливата Z в тялото на цикъла. Следният код ще доведе до грешка при компилация

Първоначалната стойност на променливата

Ако изпълните програмата на VC, а след това по време на работа, ще свали предупреждение
По време на изпълнение Неуспех при проверката # 3 - Променливата "Аз" се използва, без да се инициализира.
Ако кликнете върху "Напред", а след това програмата ще отпечата "боклук". В много други компилатори, когато програмата няма да забележите.

променлива обхват

P съм местен AC линия (обявен във всяка функция) и глобално. Една глобална променлива е видима за всички функции, декларирани в този файл. Локална променлива е ограничена до неговия обхват. Когато казвам, че променливата "видим в някое място", което означава, че в този момент тя е определена, и тя може да се използва. Да вземем например една програма, в която има глобална променлива

Тя ще се появи
Foo: 100
лента: 333
Тук глобалната променлива глобалното е видимо за всички функции. Но аргументът на функцията презаписва глобална променлива, така че местната стойност на 333 се показва, когато мине аргумент 333.
Ето още един пример

555. Програмата ще също така, както и в предишния случай, локалната променлива "по-важно." Променлива не са декларирани видими извън него, като обхват

Този пример няма да се съберат, защото съществува променлива у само в рамките на неговата част.
Ето един пример, в който декларираните променливи в рамките на блок се припокриват

програмата ще
30
20
10
Глобалните променливи трябва да се избягват. Много често можете да чуете това. Нека се опитаме да разберем защо. Във вашия прост проект глобални променливи изглеждат съвсем нормално. Но представете си, че имате приложение, което

  • 1) е разработил няколко души и се състои от стотици хиляди реда код
  • 2) работи в множество потоци

Първо, глобалната променлива, ако то е видимо за всички, подлежи на промяна всяка част на програмата. Променили сте глобална променлива, която искате да я запишете, и от друга страна на програмата вече го е презаписан различно значение (в действителност той е цял клас проблеми, които възникват в многонишкова среда). На второ място, за големи размери на проекта не се следи кой и кога nasozdavali глобални променливи. Горните примери показват как променливи могат да се припокриват един с друг, и същото се случва и в голям проект.

Разбира се, има ситуации, в които глобални променливи опростява програмата, но такива ситуации не се случват често, а не във вашата домашна работа, така че не се създаде глобални променливи!
Променливите могат да бъдат не само цяло число и плаваща запетая. Има много други видове, които ще разгледаме по-късно.

RU-Cyrl 18- Упътване Sypachev S.S. 1989-04-14 [email protected] Степан Sypachev студенти

Още не е ясно? - запис на въпроси на кутията