本人使用的操作系统 ubuntu 21.10 x86_64
使用的编译器是 gcc version 11.2.0
在C语言学习的过程中(我看的是18年的c语言学习视频),学到strncpy
和strncat
的用法,视频中的演示使用这两个函数后面不补充'\0'
的话会报错,但是我自己尝试了一下,没有加'\0'
,却成功运行了。
下面是代码:
#include<stdio.h>
#include<string.h>
int main(){
char string_one[] = "zheshiyigezifuchuan";
char string_two[50];
strncpy(string_two, string_one, 10);
printf("%s\n", string_one);
printf("%s\n", string_two);
return 0;
}
strncat的使用和上面是一样的代码。
不知道是不是C99或者C11新增加的内容。
本人记录下来,方便自己查看,也欢迎有相同疑问的朋友互相来讨论。