strcpy 在c ++中包含在哪个头文件中

strcpy 在c ++中包含在哪个头文件中,第1张

C语言:#include <string.h>

C++语言:#include <cstring>

C++ 中有三类头文件

第一类是原始的C头文件,用 #include <string.h>,注意带.h,这跟C是兼容的。

第二类是用标准化的C兼容头文件,用 #include <cstring>,注意不带 .h,其实际内容跟 string.h 完全相同。

第三类是标准化的C++的头文件,全新的,用 #include <string>,跟C的 string.h 没有关系。

扩展知识:

strcpy,即string copy(字符串复制)的缩写。

strcpy是一种C语言的标准库函数,strcpy把含有'\0'结束符的字符串复制到另一个地址空间,返回值的类型为char*。

参考资料:strcpy-百度百科

可以

在不使用string.h头文件的前提下,实现字符串的复制

void my_strcpy(char* dest, char* str)

while (*str != '\0')

*dest = *str

str++

dest++

*dest = *str//这个是将str里的'\0'赋给dest里的'\0'

复制

改进版

#include <stdio.h>

#include <assert.h>

void my_strcpy(char* dest, char* str)

assert(dest != NULL)//断言

assert(str != NULL)

while (*dest++ = *str++)

int main() {

char arr1[] = "###############"

char arr2[] = "bit"

my_strcpy(arr1, arr2)

printf("%s", arr1)

return 0

进阶版

#include <assert.h>

char * my_strcpy(char* dest, const char* str) {

char* ret = dest

assert(dest != NULL)//断言

assert(str != NULL)

//把str中的内容拷贝到dest中,包含字符'\0'

while (*dest++ = *str++)

return ret

int main() {

char arr1[] = "###############"

char arr2[] = "bit"

printf("%s", my_strcpy(arr1, arr2))

return 0


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12073266.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存