小伙伴們,大家好啊,我又來了,繼續寫博客,寫博客不僅可以檢驗自己學習成果還可以與博客的朋友們一起探討與分享和交流,
今天我們講一下c語言常見的基礎知識沒有他們的支持是不可以的哦
這里我們只是淺略的了解一下也就是初步認識一下以后的博客我會給大家詳細的講解一下,好了我們進入正題,那我們開始吧
目錄
變數的生命周期和作用域
生命周期
作用域
常量的分類
字面常量
#define定義的識別符號常量
const修飾的常變數
列舉常量
字串轉義字符以及注釋
字串
轉義字符
注釋
變數的生命周期和作用域
生命周期
生命周期官方解釋:變數的生命周期就是從創建該變數開始到該變數被銷毀的這一段時間,
各種變數的生命周期
通俗的講就是在我們寫c語言的時候,我們首先會創建變數,然后當代碼執行完成時,就結束了改代碼的生命周期(需要注意的是生命周期指的是時間不要和我們后面的作用域搞混淆了),
???????作用域
變數的作用域官方解釋:一段程式代碼中所用到的名字并不總是有效/可用 的 ,而限定這個名字的可用性的代碼范圍就是這個名字的作用域,
既然是變數的作用域我們就分為區域變數的作用域和全域變數的作用域
全域變數的作用域就是在整個我們創建的工程中都可以使用
而區域變數我們只能限制在代碼塊{}里使用,出了代碼塊則不能使用
給大家舉個例子
#include<stdio.h>
int main()
{
{
int b = 20;
}
printf("%d\n", b);
return 0;
}
這里就會出現問題int b是區域變數而在b所在代碼塊的外邊列印;如圖

這里會顯示b是未宣告的識別符號,這也就證明了區域變數的作用域出了代碼塊就會結束
總結一下
常量的分類
常量的分類有四種1:字面常量 2:#define定義的識別符號常量 3:const修飾的常變數
4:列舉常量
字面常量
也就是字面的常量唄(我好像解釋個寂寞),沒錯我們平常寫的文字,數字,字符等等都是字面常量
#define定義的識別符號常量
官方解釋:定義一個識別符號來表示一個常量,其特點是定義的識別符號不占記憶體,只是一個臨時的符號,預編譯后這個符號就不存在了
那它的用途是什么:當需要改變這個常量的值時,就不需要對整個程式一個一個進行修改,只需修改宏定義中的常量即可且當常量比較長時,使用宏就可以用較短的有意義的識別符號來代替它,這樣編程的時候就會更方便,不容易出錯,因此,宏定義的優點就是方便和易于維護,
通俗的講,就是使用簡便,當我們寫一個龐大的工程時,如果突然需要修改原來的值,這是我們一個一個修改會不會浪費我們很長的時間,我們就可以直接改宏定義的值就可以,尤其在我們后面我會給大家講一些小游戲就用到define了
我們簡單地使用一下
#include<stdio.h>
#define MAX 100
int main()
{
printf("%d\n", MAX);
return 0;
}

這是我們就很好的列印出來100了
const修飾的常變數
官方解釋:C語言中const修飾的量是常變數,它與普通變數的編譯方式一樣,唯一的區別是常變數定義后不能做左值,C++中const修飾的才是常量,
其實作用就是在你不想要在后面修改原來的值時候就會使用
#include<stdio.h>
int main()
{
int a = 10;
a = 20;
printf("%d\n", a);
return 0;
}
#include<stdio.h>
int main()
{
const int a = 10;
a = 20;
printf("%d\n", a);
return 0;
}
這是就會出現錯誤
總結:當我們不想我們原先寫的值被修改的話,我們就可以使用const
列舉常量
列舉常量從字面上理解不就是一 一列舉出來么
舉個例子
enum
{
//我們列舉一下鍵盤的上下左右鍵
left,
right,
up,
down
};
字串轉義字符以及注釋
字串
字串是用雙引號引的字符
而字符我們用''(單引號)引的字符
那我們看看字串與字符有哪些區別?
#include<stdio.h>
int main()
{
char arr1[] = "abc";
char arr2[] = { 'a','b','c' };
return 0;
}
這時我們進行除錯一下看看陣列的情況
怎樣進行除錯呢
首先先按f10然后

除錯結果

我們可以看出arr1里有a,b,c,\0.而arr2里有a,b,c
顯然得出結論在字串中結尾都會有個\0
那\0是什么呢
\0其實是我們字串的結束標志
那接下來我們分別看一下兩個陣列分別能列印出什么呢

怎么回事,為什么會出現燙燙燙呢,什么鬼?
那我們在列印大小看看

這時我們就分析一下剛才說字串有結束標志,但我沒有說字符有結束標志,奧知道了,其實字符沒有結束標志,那編譯器就會一直編譯直到找到\0則結束完
轉義字符
轉義字符官方解釋:轉義字符是一種特殊的字符常量,轉義字符以反斜線"\"開頭,后跟一個或幾個字符,轉義字符具有特定的含義,不同于字符原有的意義,故稱“轉義”字符,
我們先將轉義字符的表格拿出來
#include<stdio.h>
int main()
{
printf("%d\n", strlen("abcdef"));
printf("%d\n", strlen("c:\test\628\test.c"));
return 0;
}
大家看完表格猜猜答案是多少呢
沒錯答案是14
這里的\t,\62,都代表一個,所以結果為14
為什么可以算一個呢?
看了上面的表知道\t是水平制表符
而\ddd(為8進制0-7)所以8也算一個
那\xhh呢?
其中x代表16進制數字那hh就為0-15唄
注釋
注釋的作用
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/320982.html
標籤:AI
上一篇:從0開始的編程生活
下一篇:csrf(跨站請求偽造)
