從頭開始C語言——初識
一、註釋
(1)/* statement */
(2)// statement
(3)真正從邏輯上刪除一段程式碼:
#if 0
statements
#endif
二、預處理指令
(1)#include 宣告標頭檔案,如#include <stdio.h>~可訪問標準I/O庫的函式(Input/Output);#include <stdlib.h>定義了EXIT_SUCCESS和EXIT_FAILURE;#include <string.h>提供了操縱字串的函式
(2)#define
三、main函式
(1)每個C語言程式都必須包含一個main函式,它是程式執行的起點
ps:C語言中沒有string資料型別,但是規定,字串就是一串以“NUL”結尾的字元。NUL(字符集中'\0'字元的名字,位元組模式全為0)是作為字串終止符,它本身並不被看作是字串的一部分。如字串常量:“Hello”在記憶體中佔據6個位元組的空間,按順序分別是h、e、l、l、o和NUL。
常用printf格式程式碼:
四、補充說明常用函式
(1)strcpy和strncpy函式類似,但前者不限制需要複製的字元數量。接受兩個引數,第二個字串引數將被複制到第一個字串引數,第一個引數原有的字串被覆蓋。strcat也接受兩個引數,但它把第二個引數加到第一個字串引數的末尾。
(2)strchr:在字串內進行搜尋,接受兩個引數,第一個引數是字串,第二個引數是字元,功能是在第一個字串引數內搜尋第二個引數出現的位置,搜尋成功就返回指向這個位置的指標,否則返回NULL
(3)strstr:和strchr類似,但是其第二個引數是字串,搜尋第二個引數在第一個引數中第一次出現的位置。
五、實戰小例
(1)列印整數、浮點數、字串
(2)獲取整數和字串並輸出
(3)經典入門例項——Hello World
(4)從標準輸入讀取幾行輸入。每行輸入都要列印到標準輸出上,且前面加上行號。
#include <stdio.h>
#include <stdlib.h>
int main(){
int ch;
int line;
int at_beginning;
line=0;
at_beginning=1;
/*
**讀取字元並逐個處理它們
*/
while((ch=getchar())!=EOF){
/*
**如果我們位於一行的起始位置,列印行號
*/
if(at_beginning==1){
at_beginning=0;
line+=1;
printf("%d ",line);
}
/*
**列印字元、並對行尾進行檢查
*/
putchar(ch);
if(ch=='\n')
at_beginning=1;
}
return EXIT_SUCCESS;
}
(5)讀取多行並計算每行的長度
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX 1000
int main()
{
char s[MAX];
char str[MAX];
int n1,n2 =0;
while( gets(str)!=NULL )
{
n1 = strlen(str);//獲取長度
printf("%d\n",n1);//輸出長度
}
puts(s);
return EXIT_SUCCESS;
}