在C语言中,字符串处理是最基础也是最常用的能力之一,而strcpy作为经典字符串拷贝函数,几乎出现在所有入门教材与面试题中。它的作用看似简单——将一个字符串复制到另一个字符数组中,但其背后隐藏的风险与细节却常常被忽视。
strcpy函数的原型定义如下:
Cchar *strcpy(char *dest, const char *src);
它的功能是将src指向的字符串(包含结束符' ')完整复制到dest中,并返回dest指针。
使用方式非常直接,例如:
Cchar src[] = "hello world";
char dest[20];
strcpy(dest, src);
执行后,dest中会完整保存"hello world"字符串。
在实现层面,strcpy的工作逻辑其实就是逐字符复制,直到遇到字符串结束符