1.對於*string++!='\0'
,它其實等價於:
*string!='\0';
string++;
2.對於 strcpy函式,如果要複製的字串比老字串短,由於新字串是以nul(即』\0』)結尾,所以老字串最後剩餘的幾個字元也會被有效地刪除。
如:
char message[ ]=="original message";
strcpy(message,"different");
此時message=」different」
3.同樣使用strcpy和strcat時,目標字元陣列的空間要足以容納需要複製的字串。
這些函式都在#include
1.void *memcpy(void *dst,void const *src,size_t length);
其實就是從src的起始位置複製length個元素到dst的記憶體起始位置
例子:
#include
#include
struct person, person_copy;
int main()
輸出:
person_copy: pierre de fermat, 46
2.void *memmove(void *dst,void const *src,size_t length);
移動src開始的length個元素移動到dst開始的位置
例子:
/* memmove example */
#include
#include
int main ()
輸出:
memmove can be very very useful.
3.int *memcmp(void const *a,void const *b,size_t length);
a>b,返回值大於0
a=b,返回值等於0
a
/* memcmp example */
#include
#include
int main ()
輸出:
『dwgaotp12df0』 is greater than 『dwgaotp12df0』.
4.void *memchr(void const *a,int ch,size_t length);
從a開始的length元素個數中找ch出現的第乙個位置
例子:
/* memchr example */
#include
#include
int main()
輸出:
『p』 found at position 5.
5.void * memset ( void * a, int ch, size_t length );
從a的開始的length元素都設定為值ch。
例子:
/* memset example */
#include
#include
int main()
輸出:
—— every programmer should know memset!
字串,字串陣列,字串指標!!
字串 字元陣列實際上是一系列字元的集合,也就是 字串 string 字串陣列 在c語言中,沒有專門的字串變數,沒有string型別,通常就用乙個字元陣列來存放乙個字串。c語言規定,可以將字串直接賦值給字元陣列 在c語言中,字串總是以 0 作為串的結束符。上面的兩個字串,編譯器已經在末尾自動新增了 0...
C 字元 字串 字元陣列 字串指標 指標陣列
一 c 字元 字串 字元陣列 字串指標 指標陣列 前言 一 字元指標 字元陣列 二 字串指標 三 字串 指標陣列 四 常用方法 參考為了深入理解c 並時常回顧學過的知識點,對c 知識點進行記錄總結。參考1字元指標的儲存方式 字元指標變數本身是乙個變數,用於存放字元 字串的首位址。字串本身是存放在以該...
字串指標操作
char s abc char ptr abc cout s cout s scout s scout s 1 s 1 cout s 1 s 1 cout s 0 s 0 cout s 0 void s 0 cout s 0 s 0 printf p n s 0 0061ff1c cout s 1 ...