strncpy与strcpy的区别与注意事项
生活随笔
收集整理的這篇文章主要介紹了
strncpy与strcpy的区别与注意事项
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
strncpy?是?C語言的庫函數之一,來自 C語言標準庫,定義于?string.h,char *strncpy(char *dest, char *src, int n),把src所指字符串的前n個字節復制到dest所指的數組中,并返回指向dest的指針。
strcpy只是復制字符串,但不限制復制的數量,很容易造成緩沖溢出。strncpy要安全一些。 strncpy能夠選擇一段字符輸出,strcpy則不能。例如: char name[]={"Chinanet"},dest[20]={}; strncpy(dest,name,9); printf("%s\n",dest); strncpy可實現strcpy的字符串復制: char name[]={"Chinanet"},dest[20]={}; strncpy(dest,name,sizeof(name)); printf("%s\n",dest); 注意在以上的代碼中 dest[20]={};后面的{}不能缺少,否則會出現錯誤,而strcpy時可以不加{}原因是strcpy會復制src的'\0'
總結
以上是生活随笔為你收集整理的strncpy与strcpy的区别与注意事项的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cursor.execute(sql)
- 下一篇: 深入理解HashMap(原理,查找,扩容