Latest web development tutorials
×

C курс

C Язык учебника C Краткое введение C параметры окружающей среды C Структура программы C Базовый синтаксис C Типы данных C переменная C постоянная C Storage Class C операторы C судья C циркуляция C функция C Обзорное правила C массив C указатель C строка C структура C союз C поле Bit C typedef C Входной и Выходной C грамотность документов C препроцессор C заголовок C Слепки C Обработка ошибок C Рекурсия C Переменный параметр C Управление памятью C Параметры командной строки C Классические 100 случаев

C Стандартная библиотека

C Стандартная библиотека - справочное руководство C Стандартная библиотека - <assert.h> C Стандартная библиотека - <ctype.h> C Стандартная библиотека - <errno.h> C Стандартная библиотека - <float.h> C Стандартная библиотека - <limits.h> C Стандартная библиотека - <locale.h> C Стандартная библиотека - <math.h> C Стандартная библиотека - <setjmp.h> C Стандартная библиотека - <signal.h> C Стандартная библиотека - <stdarg.h> C Стандартная библиотека - <stddef.h> C Стандартная библиотека - <stdio.h> C Стандартная библиотека - <stdlib.h> C Стандартная библиотека - <string.h> C Стандартная библиотека - <time.h>

переменная C

На самом деле, только переменная является именем оперативного хранилища программ. С каждой переменной имеет определенный тип, определяет тип переменной для хранения размер и расположение значения в пределах диапазона может быть сохранено в памяти, оператор может быть применен к переменным.

Имя переменной может состоять из букв, цифр и символа подчеркивания. Оно должно начинаться с буквы или подчеркивания. Прописные и строчные буквы различаются, потому что C чувствителен к регистру. Основываясь на предыдущей главе объясняются основные типы, существует несколько основных типов переменных:

类型描述
char通常是一个八位字节(一个字节)。这是一个整数类型。
int对机器而言,整数的最自然的大小。
float单精度浮点值。
double双精度浮点值。
void表示类型的缺失。

Язык C также позволяет определять различные другие типы переменных, таких как перечисление, указателей, массивов, структур, объединений и т.д., которые будут объяснены в следующих главах, в этой главе мы сначала объяснить основные типы переменных.

Определение переменных в C

Определение переменных, чтобы сообщить компилятору создать переменную для хранения, где и как создавать переменные для хранения. Определение переменных определяет тип данных, а также содержит список типов или более переменных, следующим образом:

type variable_list;

Здесь тип должен быть действительный тип данных C, который может быть символ, w_char, объекты INT, с плавающей точкой, двойной, BOOL, или любой определенный пользователем,variable_list может состоять из имени одного или нескольких идентификаторов , состоящий из множества идентификаторов разделенных запятыми. Вот несколько действительным заявление:

int    i, j, k;
char   c, ch;
float  f, salary;
double d;

РядINT I, J, K, объявить и определить переменные I, J и K, который инструктирует компилятор создать переменную типа Int называется I, J, K'S.

Переменные могут быть инициализированы, когда они были объявлены (указать начальное значение). Инициализация состоит из знака равенства, за которым следует константным выражением, как показано ниже:

type variable_name = value;

Вот несколько примеров:

extern int d = 3, f = 5;    // d 和 f 的声明, 这就是单纯的声明
int d = 3, f = 5;           // 定义并初始化 d 和 f
byte z = 22;                // 定义并初始化 z
char x = 'x';               // 变量 x 的值为 'x'

Определено без инициализации: переменные со статической продолжительностью хранения будет неявно инициализируется NULL (все значения 0 байт), другие начальные значения всех переменных не определены.

C объявление переменной

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

Объявите переменные существуют два случая:

  • 1, один требуется установить место для хранения. Например: Int заявление в то время уже создала пространство для хранения.
  • 2, а другой является необходимость создания пространства для хранения, используя ключевое слово Экстерн объявить имя переменной без его определения. Например: экстерном Int А, в котором переменная может быть определена в другом файле.
  • Экстерн ключевое слово, если иное не определено являются переменными.
extern int i; //声明,不是定义
int i; //声明,也是定义

примеров

Попробуйте следующие примеры, где переменная была объявлена ​​в голове, но определение и инициализация в главной функции:

#include <stdio.h>

// 变量声明
extern int a, b;
extern int c;
extern float f;

int main ()
{
  /* 变量定义 */
  int a, b;
  int c;
  float f;
 
  /* 初始化 */
  a = 10;
  b = 20;
  
  c = a + b;
  printf("value of c : %d \n", c);

  f = 70.0/3.0;
  printf("value of f : %f \n", f);
 
  return 0;
}

Когда приведенный выше код компилируется и выполняется, он дает следующие результаты:

value of c : 30
value of f : 23.333334

C в левом значении (Lvalues) и правильное значение (Rvalues)

Есть два типа выражений C:

  1. Левое значение (именующее): указывает на область памяти называется левым значением выражения (именующее) выражение.Lvalue может появиться в левой или правой части присваивания.
  2. Rvalue (Rvalue): Термин Rvalue (Rvalue) относится к значению некоторых из адресов , сохраненных в памяти.Его значение не является правильным выражение, присваиваемое, то есть, правильные значения могут отображаться на правой стороне уступки, но не может появиться на левой части присваивания.

Значение переменной остается, она может появиться на левой части присваивания. Числовые литералы является правильное значение, и, следовательно, не может быть назначен, он не может появиться на левой части присваивания. Ниже приводится действительное утверждение:

int g = 20;

Но следующее не является допустимым заявление, он будет генерировать ошибку во время компиляции:

10 = 20;