溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言常量類型怎么定義

發(fā)布時間:2022-04-11 14:11:40 來源:億速云 閱讀:233 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹“C語言常量類型怎么定義”的相關(guān)知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“C語言常量類型怎么定義”文章能幫助大家解決問題。

常量的定義

常量就是一個不變的量(比如圓周率,性別,身份證號碼)

C語言中的常量和變量的定義的形式有所差異。

常量的分類

C語言中的常量分為以下以下幾種:

  • 1.字面常量

  • 2.const 修飾的常變量

  • 3.#define 定義的標識符常量

  • 4.枚舉常量

我們來演示一下

字面常量

字面常量,就是字面上就可以看出來的常量

int main()
{
    //字面常量演示
    3.14;//小數(shù)
    1000;//整數(shù)
    'w';//字符
    "abc";字符串
  
   return 0;
}

const修飾的常變量

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>//使用printf記得加這條代碼

int main()
{
    //const修飾的常變量演示
   int a=100;//我們等一會兒會改變它
   a=10;
   printf("%d",a);
   return 0;
}

運行結(jié)果:

10

C語言常量類型怎么定義

當我們在int a=100前加一個const來修飾

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

int main()
{
    //const修飾的常變量演示
   const int a=100;//在這兒
   a=10;
   printf("%d",a);
   return 0;
}

運行的結(jié)果:

運行錯誤,無實際輸出

C語言常量類型怎么定義

我們可以知道,const如果修飾一個變量,再給變量換一個值是不被允許的,相當于一個常量,但它還有變量的屬性,所以我們就叫它是const 修飾的常變量

為什么說它具有變量屬性呢?

我們來證明一下:

再新了解一個東西,數(shù)組,當我們來寫代碼的時候,有時候需要寫很多的變量,很麻煩,這時候我們使用數(shù)組arr[ ],(a[ ],hin[ ]都隨便,自己起一個名),在數(shù)組的[ ]中只能放常量,比如arr[5],相當于你直接定義了5個變量,里面是不能放變量的,根據(jù)這個原理我們來證明一下const 修飾的常變量是否具有變量屬性

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

int main()
{
	const int a = 100;
	int arr[10] = {0};
	return 0;
}

可正常運行

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

int main()
{
	const int a = 100;
	int arr[a] = {0};
	return 0;
}

運行結(jié)果:

出現(xiàn)了錯誤,說明const 修飾的常變量具有變量屬性

C語言常量類型怎么定義

我有一個大佬(我認為的大佬,哈哈哈)是這樣理解的:假設(shè)變量是一個空間,常量是一個實際值,變量用來容納常量,const只是鎖定了值,但是并不是把空間變成數(shù)值

#define 定義的標識符常量

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

#define MAX 100//here

int main()
{
printf("%d\n",MAX);
int a=MAX;
printf("%d\n",a);
return 0;
}

運行的結(jié)果:

100

100

C語言常量類型怎么定義

可以看出來,MAX被定義為了100,無論是直接打印還是給變量一個值都可以,想用的時候就可以拿出來使用,這個MAX就是標識符常量,也就是#define 定義的標識符常量。(#define也是可以定義一個字符串的,不局限于數(shù)字)

枚舉常量

我生活中一些值是可以一一列舉出來的,比如性別,我們初步來了解一下,畢竟只是初始c語言,

#include <stdio.h>

enum Sex
{
    MALE,//男
    FEMALE,//女
    SECRET//不確定
};
//enum Sex未來的可能取值就是MALE,FEMALE,SECRET,它們?nèi)齻€就是枚舉常量

int main()
{
    //枚舉常量演示
    printf("%d\n", MALE);
    printf("%d\n", FEMALE);
    printf("%d\n", SECRET);
    //注:枚舉常量的默認是從0開始,依次向下遞增1的

注意,這里enum Sex里面三個枚舉常量并不開辟空間,而且也是不能改變的,改變就會報錯

關(guān)于“C語言常量類型怎么定義”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識,可以關(guān)注億速云行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI