Переменные,типы данных, константы в Си-шарп
Пишем первую программу на Си-шарп
В программировании есть такая традиция – изучение любого языка начинается с написания программы, которая выводит на экран сообщение «Hello, World!». Мы не будем отступать от традиций.
Запускаем Microsoft Visual C# 2013 Express -> Меню -> Файл -> Новый проект -> В списке выбираем Console Application (Консольное приложение) -> называем проект и жмем ОК. В итоге будет создан проект с одним файлом с расширением *.cs в котором мы и будем писать нашу программу. В этом файле уже есть несколько шаблонных строк кода.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
}
}
}
И это уже готовая программа, только она не делает ничего.
Добавим несколько строк кода между фигурными скобками функции Main, чтобы вывести «Hello, World!» на экран.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
Console.ReadKey();
}
}
}
Чтобы скомпилировать и запустить программу жмем F5. В итоге, видим на экране наше приветствие. Поздравляю с первой написанной программой на Си-шарп!
Детально код разбирать пока не будем, скажем только, что мы имеем класс Program, внутри которого объявлена статическая функция (метод) Main, что делает его главным классом приложения, и такой класс может быть только один. Функция Main является точкой входа программы, и она должна обязательно быть в любой консольной программе. Строка Console.WriteLine("Hello, World!"); выводит сообщение на экран. После этого, чтобы программа не закрылась, и мы смогли увидеть результат, командой Console.ReadKey(); мы ожидаем нажатия клавиши пользователем. После нажатия клавиши приложение соответственно закрывается.
На этом первый урок окончен, вперед ко второму!
Переменные,типы данных, константы в Си-шарп
Переменная – это именованная область памяти. В переменную можно записывать данные и считывать. Данные, записанные в переменной, называются значениемпеременной.
Си-шарп – язык жесткой типизации. Каждая переменная должна быть определенного типа данных. Ниже, в таблице наведены встроенные типы данных языка Си-шарп:
Тип | Область значений | Размер |
sbyte | -128 до 127 | Знаковое 8-бит целое |
byte | 0 до 255 | Беззнаковое 8-бит целое |
char | U+0000 до U+ffff | 16-битовый символ Unicode |
bool | true или false | 1 байт* |
short | -32768 до 32767 | Знаковое 16-бит целое |
ushort | 0 до 65535 | Беззнаковое 16-бит целое |
int | -2147483648 до 2147483647 | Знаковое 32-бит целое |
uint | 0 до 4294967295 | Беззнаковое 32-бит целое |
long | -9223372036854775808 до 9223372036854775807 | Знаковое 64-бит целое |
ulong | 0 до 18446744073709551615 | Беззнаковое 64-бит целое |
float | ±1,5*10-45 до ±3,4*1033 | 4 байта, точность — 7 разрядов |
double | ±5*10-324 до ±1,7*10306 | 8 байтов, точность — 16 разрядов |
decimal | (-7,9 * 1028 до 7,9 * 1028) / (100–28) | 16 байт, точность — 28 разрядов |
*Здесь нет ошибки. Оперативная память - массив байтов, где каждый байт имеет уникальный адрес. Для bool достаточно одного бита: 0 - false, 1 - true, но минимальная адресуемая сущность - байт, поэтому ненулевой байт считается за истину, нулевой - ложью.
Для того, чтобы использовать переменную, ее сначала нужно объявить:
static void Main(string[] args)
{
int a; // объявляем переменную a типа int
a = 5; // записываем в переменную a число 5
int b, c; // объявить можно сразу несколько переменных через запятую
bool d; // объявляем переменную d типа bool
d = true; // записываем в переменную d значение true (истина)
long e = 10; // при объявлении переменной можно сразу же задавать ей значение, это называется инициализацией
float f = 5.5f; // чтобы записать число с плавающей точкой типа float, нужно после значения добавлять суффикс f.
char g = 'g'; // объявление символьной переменой g с ее инициализацией значением символа 'g'
}
При использовании переменной, в которую не было записано значение, компилятор выдаст ошибку "Use of unassigned local variable [variableName]".
static void Main(string[] args)
{
int a;
Console.WriteLine(a); //ошибка
}
Язык Си-шарп чувствительный к регистру символов. Переменные max и Max это не одно и то же. Не забывайте этого, чтобы не иметь лишних проблем.
Имя переменной должно отображать суть данных, которые она отображает. Не стоит называть переменные ни о чем не говорящими именами типа a, b, c. Используйте английские слова. Высота – height, возраст – age и т. д.
НИКОГДА не используйте кириллические символы в именах переменных.