" />

亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C語言的常量和字符串

 更新時間:2021年12月13日 16:43:09   作者:駑馬Numa  
這篇文章主要為大家介紹了C語言常量和字符串,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

常量種類

C語言中,我們常使用的常量有以下幾種:

  • 字面常量
  • const常變量
  • #define定義的標識符常量
  • 枚舉常量

代碼如下

#include<stdio.h>
enum { //使用enum來建立枚舉常量
	papa,//不賦值默認從0開始,如若賦值,從此依次遞增
	mama,
	me,
	familynumber
};
int main() {
	3.1415926;//普通的字面常量
	const int a = 100;//定義const常量
	printf("a=%d\n", a);//a被const定義,變得不可修改
#define T 999
	printf("T=%d\n", T);//使用宏定義常量T(既define的標識符常量)	
	printf("familynumber=%d", familynumber);//枚舉常量的應(yīng)用,打印出一個整形
	return 0;
}

在用const定義一個常變量后,如仍然給這個常變量賦值,將會出現(xiàn)以下情況

在這里插入圖片描述

注意!!

此時,此常變量既不是變量也不是常量!

因為,如果我們用此常變量定義一個數(shù)組的大小時,系統(tǒng)也會報錯

在這里插入圖片描述

字符串

C語言中,用char定義字符類型數(shù)據(jù)變量;

我們知道了例如'a',是一個字符,

那么什么是字符串呢?

其實啊,字符串就是多個字符。

“Hello World!”

這就是一行簡單的字符串。

字符串的結(jié)束標志

char arr1[] = {"abcd"};
	char arr2[] = {'a','b','c','d'};
	char arr3[] = {'a','b','c','d','\0'};
	
	printf("%s\n", arr1);
	printf("%s\n", arr2);
	printf("%s\n", arr3);

此時打印出結(jié)果為

在這里插入圖片描述

arr2里面有四個字符,與arr3相比,最后缺乏了結(jié)束標志\0;

所以出現(xiàn)了經(jīng)典的燙燙燙燙,這是因為缺乏結(jié)束標志,就會導致數(shù)據(jù)溢出;

那為什么arr1沒有問題呢?

因為arr1是由字符組成的字符串,字符串的最后,隱藏有一個結(jié)束標準\0,只不過我們看不到罷了~

關(guān)于字符串的長度

我們之前了解到,想要得到某個數(shù)據(jù)類型占據(jù)了多少內(nèi)存,

得用到庫函數(shù) sizeof,

那我們?nèi)绻胍玫揭粋€字符串的長度,那我們應(yīng)該用什么呢?

strlen

int main() {
	printf("%d\n", strlen("abcd"));//使用庫函數(shù)strlen得到字符串的長度,注意;\0不會被計算入內(nèi)
	return 0;
}

如此,我們便得到了字符串的長度,4

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • C++用兩個棧實現(xiàn)一個隊列(面試官的小結(jié))

    C++用兩個棧實現(xiàn)一個隊列(面試官的小結(jié))

    這篇文章主要給大家介紹了關(guān)于C++用兩個棧實現(xiàn)一個隊列的相關(guān)資料,這是來自一名面試官的小結(jié),文中通過示例代碼介紹的非常詳細,對大家學習或者使用C++具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-05-05
  • 最新評論