c 基礎語法筆記

2021-09-25 19:25:17 字數 1169 閱讀 1892

1.成員訪問運算子

對於形如point->mem的表示式,根據point的型別不同,其分別等價於

(*point).mem;   //point是乙個內建的指標型別

point.operator()->mem; //point是類的乙個物件

2.運算優先順序

*(i++)先運算,再執行加操作;*(++i)相反

3.型別轉換

char轉int

char s;

int a = s-'0'

int轉char

int a = 5;

char s = a +'0'

atoi、stoi、strtoi區別

首先atoi和strtol都是c裡面的函式,他們都可以將字串轉為int,它們的引數都是const char*,因此在用string時,必須調c_str()方法將其轉為char*的字串。或者atof,strtod將字串轉為double,它們都從字串開始尋找數字或者正負號或者小數點,然後遇到非法字元終止,不會報異常

string strnum=" 232s3112";

int num1=atoi(strnum.c_str());

long int num2=strtol(strnum.c_str(),nullptr,10);

返回結果均為232,程式在最開始遇到空格跳過,然後遇到了字元's'終止。

strtol的第三個引數base的含義是當前字串中的數字是什麼進製,而atoi則只能識別十進位制的。

stoi是string庫中的函式,他的引數是string,當無法轉換時會報錯。

void*需要強制型別轉換

4.程序通訊

1.管道:速度慢,容量有限,只有父子程序能通訊    

2.fifo:任何程序間都能通訊,但速度慢    

4.訊號量:不能傳遞復雜訊息,只能用來同步    

5.共享記憶體區:能夠很容易控制容量,速度快,但要保持同步,比如乙個程序在寫的時候,另乙個程序要注意讀寫的問題,相當於執行緒中的執行緒安全,當然,共享記憶體區同樣可以用作執行緒間通訊,不過沒這個必要,執行緒間本來就已經共享了同一程序內的一塊記憶體

基礎語法筆記

1 由數字 字母 下劃線組成 2 不能以數字開頭 3 不能是 關鍵字 keyword.kwlist python已經定義好的,有自己特殊功能的 4 區分大小寫。5 見名知意。示例如下 1 由數字 字母 下劃線組成 handsome 01 我每天對著鏡子說三遍 我很帥 handsome 我每天對著鏡子...

C 基礎語法

最近開始學習c 程式語言,以前一直使用c c 也只是用到了一些最簡單基礎的用法。為了方便學習,將學習過程中c 語言與c c 不同或不熟悉之處記錄下來,以便日後隨時檢視。本人是通過閱讀 c 入門經典 第6版 學習c 在閱讀過程中隨手作如下記錄。變數在使用之前必須對其進行宣告和初始化。switch每個分...

C 基礎語法

簡介 c語句是面向結構的語言,c 是物件導向的語言,c 從根本上已經發生質飛躍,並對c進行豐富的擴充套件。c是c 的子集,所以大部c語言程式都可以不加修改的拿到c 下使用。c 不完全同於c語言,c語言,可以完全植入c 檔案 變數,指標,變數,迴圈,記憶體等 c 不完全相容c c 語言函式名是不能重名...