C 中函式strcpy和strcpy s

2021-08-27 18:10:08 字數 1523 閱讀 2240

strcpy:

語法:

#include 

char

*strcpy( char

*to, const

char

*from

);

功能:複製字串from 中的字元到字串to,包括空值結束符。返回值為指標to。由於沒有字串長度的限制,所以複製過程中遇到過長的字串可能會發生未知的錯誤。

strcpy_s:

語法:

#include

errno_t __cdecl strcpy_s(char

*_destination,rsize_t _sizeinbytes,char

const

* _source);

功能:複製字串_source中的字元到字串_destination,其中限制了大小為_sizeinbytes,這是為了防止字串過長超出快取區記憶體引發問題而要求的。

在vs2015中使用strcpy的時候會給出error c4996: this function or variable may be unsafe. consider using strcpy_s instead. to disable deprecation, use _crt_secure_no_warnings.這樣我們可以按照上面的語法換成使用strcpy_s,也可以選擇不產生警告,在程式開頭加上

#

define

_crt_secure_no_warnings

即可,但要注意字串不可太長。

例項1(strcpy_s):

#include

#include

using

namespace

std;const

intn = 2

;void

main()

cout

<< endl;

for(int

i(0); i < n; i++)

cout

<< "string #"

<< i << ":"

<< strings``

] << endl;

}

例項2(strcpy):

#define _crt_secure_no_warnings

#include

#include

using

namespace

std;const

intn = 2

;void

main()

cout

<< endl;

for(int

i(0); i < n; i++)

cout

<< "string #"

<< i << ":"

<< strings[i] << endl;

}

C語言 模擬實現strcpy函式與strcat函式

strcpy函式 首先我們來了解一下strcpy函式的功能和用法 strcpy是一種c語言的標準庫函式,strcpy把從src位址開始且含有 0 結束符的字串複製到以dest開始的位址空間,返回值的型別為char 也就是將乙個字串拷貝到另乙個字串中。那接下來我們看如何具體實現。我們的基本思想是定義兩...

C 中strcpy函式的實現

原位址strcpy函式的講解 char strcpy char strdest,const char strsrc 錯誤的做法 1 a 不檢查指標的有效性,說明答題者不注重 的健壯性。b 檢查指標的有效性時使用 strdest strsrc 或 strdest strsrc 說明答題者對c語言中型別...

實現C中的strcpy函式

1 strcpy庫函式介紹 c語言中在標頭檔案中,c 中在中 函式原型 char strcpy char deststr,char srcstr 函式功能 將srcstr中的字串拷貝到deststr的記憶體中 通過字串結束符 0 來控制結束,如果deststr預留的記憶體不夠的話會 溢位 2 實現s...