C constante


Les constantes sont des valeurs fixes qui ne changent pas pendant l'exécution du programme. Ces valeurs fixes sont également appelées valeurs littérales.

Les constantes peuvent être n'importe quel type de données de base, tel que des constantes entières, des constantes à virgule flottante, des constantes de caractère ou des littéraux de chaîne, ainsi que des constantes d'énumération.

La constante est comme une variable ordinaire, sauf que la valeur d'une constante ne peut pas être modifiée une fois qu'elle est définie.

Constantes entières

Les constantes entières peuvent être des constantes décimales, octales ou hexadécimales. Le préfixe spécifie la base : 0x ou 0X pour hexadécimal, 0 pour octal, et sans préfixe, la valeur par défaut est décimale.

Les constantes entières peuvent également avoir un suffixe. Le suffixe est une combinaison de U et L. U représente un entier non signé (non signé) et L représente un entier long (long). Le suffixe peut être en majuscule ou en minuscule, et U et L peuvent être dans n'importe quel ordre.

Voici des exemples de constantes entières :

212         /* 合法的 */215u        /* 合法的 */0xFeeL      /* 合法的 */078         /* 非法的:8 不是八进制的数字 */032UU       /* 非法的:不能重复后缀 */

Voici des exemples de différents types de constantes entières :

85         /* 十进制 */0213       /* 八进制 */0x4b       /* 十六进制 */30         /* 整数 */30u        /* 无符号整数 */30l        /* 长整数 */30ul       /* 无符号长整数 */

Constantes à virgule flottante

Point flottant les constantes sont constituées d'une partie entière, d'un point décimal, d'une partie fractionnaire et d'une partie exposant. Vous pouvez représenter des constantes à virgule flottante sous forme décimale ou exponentielle.

Lorsqu'il est exprimé sous forme décimale, le point décimal, l'exposant ou les deux doivent être inclus. Lorsqu'il est exprimé sous forme exponentielle, une partie entière, une partie décimale ou les deux doivent être incluses. Les exposants signés sont introduits par e ou E.

Voici des exemples de constantes à virgule flottante :

3.14159       /* 合法的 */314159E-5L    /* 合法的 */510E          /* 非法的:不完整的指数 */210f          /* 非法的:没有小数或指数 */.e55          /* 非法的:缺少整数或分数 */

Constantes de caractère

Les constantes de caractère sont placées entre guillemets simples, par exemple, « x » peut être stocké dans char dans une simple variable de type.

Une constante de caractère peut être un caractère ordinaire (tel que 'x'), une séquence d'échappement (telle que 't') ou un caractère universel (tel que 'u02C0').

En C, il existe des caractères spécifiques lorsqu'ils sont précédés d'une barre oblique inverse, ils ont une signification particulière et sont utilisés pour représenter des sauts de ligne (n) ou des tabulations (t). Le tableau suivant répertorie certains de ces codes de séquence d'échappement :

转义序列含义
\ 字符
'' 字符
"" 字符
?? 字符
a警报铃声
b退格键
f换页符
n换行符
r回车
t水平制表符
v垂直制表符
ooo一到三位的八进制数
xhh . . .一个或多个数字的十六进制数

L'exemple suivant montre quelques caractères de séquence d'échappement :

#include <stdio.h>int main(){
   printf("Hello\tWorld\n\n");   return 0;}

Lorsque le code ci-dessus est compilé et exécuté, il produit les résultats suivants :

Hello   World

String constant

String les littéraux ou les constantes sont placés entre guillemets "". Une chaîne contient des caractères similaires aux constantes de caractères : caractères ordinaires, séquences d'échappement et caractères universels.

Vous pouvez utiliser des espaces comme délimiteurs pour séparer une longue chaîne constante en lignes.

L'exemple ci-dessous montre quelques constantes de chaîne. Les chaînes affichées dans les trois formulaires suivants sont les mêmes.

"hello, dear""hello, \

dear""hello, " "d" "ear"

Définir des constantes

En C, il existe deux manières simples de définir des constantes :

  1. Utilisez le préprocesseur #define.

  2. Utilisez le mot-clé const.

#define préprocesseur

Ce qui suit est la forme d'utilisation de #define préprocesseur pour définir des constantes :

#define identifier value

Veuillez consulter l'exemple suivant pour plus de détails :

#include <stdio.h>#define LENGTH 10   #define WIDTH  5#define NEWLINE '\n'int main(){   int area;  
  
   area = LENGTH * WIDTH;
   printf("value of area : %d", area);
   printf("%c", NEWLINE);   return 0;}

Lorsque le code ci-dessus est compilé et exécuté, il produit les résultats suivants :

value of area : 50

const Keywords

Vous pouvez utiliser le préfixe const Déclarer une constante du type spécifié comme suit :

const type variable = value;

Veuillez consulter l'exemple suivant pour plus de détails :

#include <stdio.h>int main(){   const int  LENGTH = 10;   const int  WIDTH  = 5;   const char NEWLINE = '\n';   int area;  
   
   area = LENGTH * WIDTH;
   printf("value of area : %d", area);
   printf("%c", NEWLINE);   return 0;}

Lorsque le code ci-dessus est compilé et exécuté, il produira les résultats suivants :

value of area : 50

Veuillez noter que c'est une bonne pratique de programmation de définir des constantes en lettres majuscules.