c學習筆記--1基本輸入輸出與操作符
阿新 • • 發佈:2018-12-12
好久之前的了,學習c語言的筆記。 依舊是老套路,從基礎的變數型別,到函式定義一步步學起
#include <string.h>
#include <stdio.h>
//printf函式是一個標準庫函式,它的函式原型在標頭檔案“stdio.h”中。
//但作為一個特例,不要求在使用 printf 函式之前必須包含stdio.h檔案
//c語言的常用輸入輸出與操作符
void test()
{
int a = 5;
char put[] = "iuput your number:";
//printf函式按格式輸出指定變數 printf(“格式控制字串”, 輸出變量表列)
//一個原理就是變數的名字實際上就指代一個指標,指向變數的記憶體 而後根據格式控制讀取相應的大小資料並輸出
printf("your old number is: %d \n", a);
printf("%s \n", put);
//scanf函式是一個接收控制檯輸入的函式,儲存到變數
scanf("%d", &a);
printf("your new number is: %d \n", a);
char putstr[] = "asdfds";
puts(putstr); //直接輸出字串
//常用控制字元如下:
//
//格式字元 意義
// d 以十進位制形式輸出帶符號整數(正數不輸出符號)
// o 以八進位制形式輸出無符號整數(不輸出字首0)
// x, X 以十六進位制形式輸出無符號整數(不輸出字首Ox)
// u 以十進位制形式輸出無符號整數
// f 以小數形式輸出單、雙精度實數
// e, E 以指數形式輸出單、雙精度實數
// g, G 以%f或%e中較短的輸出寬度輸出單、雙精度實數
// c 輸出單個字元
// s 輸出字串
//操作運算子
int aa = 30;
int bb = 10;
int cc = aa / bb; // + - * /
printf("+ - * / the result is :%d \n", cc);
//c語言指標的精髓 就是這兩個符號 理解什麼是取地址 什麼是取指向的內容
//& 取地址運算子 獲取變數地址
printf("& the address is :%d \n", &cc);
//取內容運算子 即代表指標的意思
int *intp = &aa; //定義一個指標 指向aa的地址
printf("* the address and value is :%d--%d\n", *intp,intp); //*intp取指標的內容 即aa變數
int **p = &intp; //定義指標的指標 p指向intp的地址 *p是intp的內容 **p則是aa的內容
printf("** the address and value is :%d--%d\n", **p, p); //*intp取指標的內容 即aa變數
// ~按位反
int d = ~bb;
printf("~ operator by bit :%d \n",d);
//<<左移位 >>右移位
int e = 1;
int shifte = e << 2;
printf("left shift << is :%d \n", shifte);
//邏輯 &&與 ||或 !非 按位與或 & | 異或^
if (e > 0 || d > 0) //邏輯或運算
printf("|| operating success!\n");
if(e|aa>0) //按位或運算
printf("| bit operating success!\n");
//比較字元 > < == <= >= != 不舉例子了
//自運算子 ++ -- 自加 自減
int as = 100;
as--;
printf("-- operator result is:%d--%d\n", as+1,as);
//三目運算子 (表示式)?1:2 自帶判斷 成立執行1 否則2
int three = as + 2 > 100 ? (1) : (2); //如果是表示式 則需要小括號括起來
printf("? operator result is:%d\n",three);
//如果前邊有scan 那麼會接收一個緩衝區字元 從而結束 這是後需要兩個
gets(); //接收一個字元 控制程式別結束
gets();
}