# 談談c語言中 「\n」 的作用
在c語言中每個學習者都知道 「\n」 是轉義字元,其作用是換行,但是另乙個作用你肯定不知道!
以前的我也只是單純的認為 "\n"就是乙個換行符,就只有換行的作用,但是今天我遇到了 "\n"的另乙個作用:重新整理緩衝區!!!
單純的文字描述可能不夠形象,接下來我們看看案列:
首先下面**是執行兩個程序之間的通訊(這不重要,今天的重點是 「\n」),**如下:
(這是接收資訊的**,函式呼叫中的 printf 裡是沒加 \n 的)
#include
#include
#include
#include
// void handler(int sig, siginfo_t *info, void *ucontext)
void
handler
(int signum, siginfo_t *info,
void
*context)
}int
main()
(以下是傳送資訊的**:)
#include
#include
#include
#include
#include
intmain
(int argc,
char
*ar**)
現在編譯後先執行接受資訊的**,再執行傳送訊息的**,其接收端結果為:
(下圖是不加 \n 執行的結果)
加上後 \n 後的**如下:(只是比上面**多了 \n)
#include
#include
#include
#include
// void handler(int sig, siginfo_t *info, void *ucontext)
void
handler
(int signum, siginfo_t *info,
void
*context)
}int
main()
加上 \n 後的執行結果如下:
所以 \n 不僅有換行的作用,還有重新整理緩衝區的作用。
c語言中 作用
和 操作符是和 define巨集使用的.使用 使在 後的首個引數返回為乙個帶引號的字串.例如,命令 define to string s s 將會使編譯器把以下命令 cout to string hello world endl 理解為 cout hello world endl 使用 鏈結 前後的...
C語言中extern的作用
extern可以置於變數或者函式前,以標示變數或者函式的定義在別的檔案中,提示編譯器遇到此變數和函式時在其他模組中尋找其定義。在乙個原始檔裡定義了乙個陣列 char a 6 在另外乙個檔案裡用下列語句進行了宣告 extern char a 請問,這樣可以嗎?答案與分析 1 不可以,程式執行時會告訴你...
C語言中static的作用
在c語言中,static的字面意思很容易把我們匯入歧途,其實它的作用有三條。1 第乙個作用 隱藏。當我們同時編譯多個檔案時,所有未加static字首的 全域性變數和函式都具有全域性可見性。為理解這句話,我舉例來說明。我們要同時編譯兩個原始檔,乙個是a.c,另乙個是main.c。下面是a.c的內容 i...