- 相關推薦
C語言字符串操作函數(shù)和常用的實現(xiàn)
C語言字符串操作有很多,字符中的函數(shù)和常用的實現(xiàn)有哪些呢?下面是小編特別為需要實現(xiàn)編程學習的朋友收集整理的,歡迎大家閱讀!更多相關信息請關注相關欄目!
面試官很喜歡讓求職者寫一些常用庫函數(shù)的實現(xiàn),有很多是和字符串相關的,有一些是關于內存拷貝的。一般,常會讓寫的函數(shù)有以下幾個:
strcpy , strncpy, memcpy。
memset一般不會讓去寫,但這個函數(shù)也很有特點,有很多容易用錯的地方。一并總結吧。字符串操作函數(shù) atof()將字符串轉換成浮點數(shù)atoi()將字符串轉換成整數(shù)atol()將字符串轉換成長整型數(shù)gcvt()將浮點型數(shù)轉換為字符串(四舍五入)strtod()將字符串轉換成浮點數(shù)strtol()將字符串轉換成長整型數(shù)strtoul()將字符串轉換成無符號長整型數(shù)toascii()將整數(shù)轉換成合法的ASCII碼字符tolower()將大寫字母轉換為小寫字母toupper()將小寫字母轉換為大寫字母index()查找字符串并返回首次出現(xiàn)的位置rindex()查找字符串并返回最后一次出現(xiàn)的位置strcasecmp()判斷字符串是否相等(忽略大小寫)strcat()連接字符串strcmp()根據(jù)ASCII碼比較字符串strcoll()根據(jù)環(huán)境變量LC_COLLATE來比較字符串strcpy()復制字符串strcspn()查找字符串并返回首次出現(xiàn)的位置strchr()查找字符串并返回首次出現(xiàn)該字符的地址strdup()復制字符串strlen()返回字符串長度strncasecmp()比較字符串的前n個字符strncat()拼接字符串(取前n個字符)strncpy()復制字符串(取前n個字符)strpbrk()定位字符串中第一個出現(xiàn)的指定字符strrchr()定位字符串中最后出現(xiàn)的指定字符strspn()返回從字符串開頭連續(xù)包含特定字符的字符數(shù)目strstr()返回指定字符串第一次出現(xiàn)的地址strtok()字符串分割
1. strcpy
strcpy函數(shù)的原型是:
char * strcpy(char* dest, const char* src)
strcpy的實現(xiàn)經常要注意的細節(jié)是:
(1)判斷地址是否為空,個人感覺可以使用斷言
(2)參數(shù)只有兩個地址,沒有拷貝的長度。拷貝到