天天看點

C語言_1

video2

  1. scanf;strcpy;strlen;strcat等函數是不安全的,在vscode内會自動提供一個更安全的函數如scanf_s,但是這樣就扼殺了程式的相容性,是以我們一般不采取這樣方式來解決,而是在第一排聲明,加入#define _CRT_SECURE_NO_WARNINGS 1這樣一句話,使其失效,可以在vs的vsprojectitems檔案夾中找到newc++file.cpp檔案,然後用nodepad++更改内容,則可以讓每個建立檔案的開頭帶上這一句話。
  1. const修飾的常變量,即不能在被修改,常變量:具有常屬性的變量。

    const int n=10;//此時n是變量,但是又有常屬性,是以我們說n是常變量。

    #define定義的辨別符常量,#define Max 10 說明Max此時是常量,值是10。

    枚舉常量:一一列舉,關鍵字enum;

#include <stdio>
enum Sex{
  MALE,
  FEMALE,
  SECRET
};
int main(){
  //enum Sex s=MALE;
  printf("%d%d",MALE);//0
  printf("%d%d",FEMALE);//1
  printf("%d%d",SECRET);//2
  return 0;
}      
  1. 字元串,不管多長都會有一個隐藏在字元串末尾的 ’/0‘,是結束标志,它的值是0,也是轉義字元,不作為字元串内容。char arr1[] = "abc"; char arr2[] = {'a' , 'b' , 'c'};第一個字元串長度為3,第二個字元串長度為随機值。

strlen()是計算字元串長度的一個函數。

  1. 轉義字元

    \? ?(防止在書寫多個?時被解析為三字母詞)

    \'

    \\ \讓\是\防止成為轉義字元内的\

    \ddd 表示1-3個八進制數字,\32是兩個8進制數字

    \xdd 表示兩個16進制數字

  2. c語言的注釋風格不支援嵌套(/* */);
  3. 函數有自定義函數和庫函數。
  4. 左移右移,被移位本身的資料不改變,和b=a+1性質一樣。
  5. 按位與 & 按位或 | 按位異或 ^
int a=3;
int b=5;
int c=a&b;      

先把a轉換為二進制為011,b轉換為二進制為101,按位進行與操作,相同為一,不同為零,則c的值為1。

  1. 單目操作符,雙目操作符,三目操作符,在操作符旁邊有兩個操作數,則稱為雙目操作符。在c語言中表示真假,0表示假,而!進行取反,非零為真。
int a=10;
  printf("%d\n",a);
  printf("%d\n",!a);
//得出的值為10 0;
int a=0;
  printf("%d\n",a);
  printf("%d\n",!a);
//得出的值為0 1;      
  1. sizeof計算的是變量或者是類型的位元組長度。也可以計算數組的大小,計算數組的個數=總元素大小/單個元素的大小