C語言相關函式及sed命令
1.memset()函式原型是extern void *memset(void *buffer, int c, int count)
buffer:為指標或是陣列,
c:是賦給buffer的值,
count:是buffer的長度.
這個函式在socket中多用於清空陣列.如:原型是memset(buffer, 0, sizeof(buffer))
Memset 用來對一段記憶體空間全部設定為某個字元,一般用在對定義的字串進行初始化為‘ ’或‘/0’;
例:char a[100];memset(a, '/0', sizeof(a));
2.linux程序間通訊函式:https://www.cnblogs.com/52php/p/5861372.html
3.strcmp():字串比較函式
原型:int strcmp(const char *s1, const char *s2);
標頭檔案:#include <string.h>
功能:用來比較兩個字串
引數:s1、s2為兩個進行比較的字串
返回值:若s1、s2字串相等,則返回零;若s1大於s2,則返回大於零的數;否則,則返回小於零的數。
說明:strcmp()函式是根據ACSII碼的值來比較兩個字串的;strcmp()函式首先將s1字串的第一個字元值減去s2第一個字元,若差值為零則繼 續比較下去;若差值不為零,則返回差值。
4. strstr函式
strstr(str1,str2) 函式用於判斷字串str2是否是str1的子串。如果是,則該函式返回str2在str1中首次出現的地址;否則,返回NULL。
5./t:轉義字元,是水平製表符,相當於Tab鍵
/r/n:回車加換行
6.int main(int argc ,char * argv[])詳解
argc是命令列總的引數個數
argv[]是argc個引數,其中第0個引數是程式的全名,以後的引數
命令列後面跟的使用者輸入的引數
7.strcat函式
extern char *strcat(char *dest,char *src);
#include <string.h>
在C++中,則存在於<cstring>標頭檔案中。
功能:
把src所指字串新增到dest結尾處(覆蓋dest結尾處的'\0')。
說明
src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字串。
返回指向dest的指標。
8.char *strncpy(char *dest, const char *src, int n),
把src所指向的字串中以src地址開始的前n個位元組複製到dest所指的陣列中,並返回被複制後的dest。
9.snprintf()函式用於將格式化的資料寫入字串,其原型為:
int snprintf(char *str, int n, char * format [, argument, ...]);
【引數】str為要寫入的字串;n為要寫入的字元的最大數目,超過n會被截斷;format為格式化字串,與printf()函式相同;argument為變數。
【返回值】成功則返回引數str 字串長度,失敗則返回-1,錯誤原因存於errno 中。
10.sed的用法:
替換操作:s命令
替換文字中的字串:
sed 's/book/books/' file
-n選項和p命令一起使用表示只打印那些發生替換的行:
sed -n 's/test/TEST/p' file
直接編輯檔案選項-i,會匹配file檔案中每一行的第一個book替換為books:
sed -i 's/book/books/g' file