c語言知識

2021-10-03 12:58:06 字數 699 閱讀 2834

一*的使用

1、在scanf中使用,則新增了*的部分會被忽略(跳過),不會被引數獲取。

例如:int a,b;

char b[10];

scanf("%d%*s",&a,b);

輸入為:

12 abc

那麼12將會讀取到變數a中,但是後面的abc將在讀取之後拋棄,不賦予任何變數(例如這裡的字元陣列b)

用*和掃瞄集配合,可以從輸入中只選出需要的內容,而忽略其餘的東西。

另外,也常用於清空緩衝區。

2、在printf中使用,表示用後面的形參替代的位置,實現動態格式輸出。

例如:printf("%*s", 10, s); /意思是輸出字串s,但至少佔10個位置,不足的在字串s左邊補空格,這裡等同於printf("%10s", s);/

printf("%.*s\n",int,str) ;

// %.*s 其中的.*表示顯示的精度 對字串輸出(s)型別來說就是寬度

// 這個*代表的值由後面的引數列表中的整數型(int)值給出

例如:printf("%.*s\n", 1, 「abc」);// 輸出a

printf("%.*s\n", 2, 「abc」);// 輸出ab

printf("%.*s\n", 3, 「abc」);// 輸出abc >3是一樣的效果 因為輸出型別type = s,遇到』\0』會結束

原創鏈結

C語言知識

轉義字元 注意以下幾種轉義字元 r回車 不換行 v垂直製表 b退格 ddd 1到3位八進位制ascii碼值代表的字元 xhh 1到2位十六進製制ascii碼值所代表的字元 所以要注意,後兩個的長度是1而不是3,因為他們代表乙個字元。三元運算子 max a b a b 這個運算子的意思就是,a與b進行...

C語言知識

一 c語言知識思維導圖 二.寫出自己對以下語法的認識 1.if else if 語句1 else認識 判斷語句1,如果不成立的話做else後面語句3,成立的話就走語句2,可以有許多if else語句組合在一起,進行更複雜更多的判斷,用這種語句要注意判斷關係符號 等等,還有語句1是等式的話會有乙個值,...

C語言 小知識

1.表示式的求值 初始值 x 1,y 1 z 1 求 x y z 答 從左到右順序依次求值,1 true 注意 因為 操作符的左運算元是true,所以沒有必要求值了.事實上c語言肯定不會繼續求值 有關規則,在按從左到右的順序對乙個邏輯表示式求值的時候,只要知道了它的實際結果,就不會對其餘部分求值.這...