C语言中的strncpy函数是一个字符串函数,用于将一个字符串中的n个字符复制到另一个字符串。strncpy函数的语法是:
char *strncpy(char *destination, char *source, size_t n);
或者我们可以简单地写参数为(str1,str2,size);
- 源:一个有效的字符串
- 目标:函数将从源字符串复制字符到目标字符串。
- n:您想从源复制的字符数。
C语言strncpy示例
此函数用于复制用户指定的字符串。该程序将帮助您通过多个示例了解strncpy方法。
提示:在使用此strncpy 函数之前,必须包含#include<string.h>头文件。
第一个语句会将str3中的所有字符复制到str1,因为C语言的长度小于给定的40个大小。
第二个语句会将str3中的前9个字符复制到str1,因为我们将大小限制为9。
#include <stdio.h>
#include<string.h>
int main()
{
char str1[50], str2[50], str4[50];
char str3[] = "C Programming Language ";
strncpy(str1, str3, 40);
printf("\n The Final = %s", str1);
strncpy(str2, str3, 9);
printf("\n The Final = %s", str2);
memset(str4, '\0', sizeof(str4));
strncpy(str4, "Tutorial Gateway", 16);
printf("\n The Final = %s", str4);
}
The Final = C Programming Language
The Final = C Program
The Final = Tutorial Gateway
C语言strncpy示例2
此程序允许用户输入自己的字符数组。接下来,它将使用strncpy函数复制用户指定的字符串。
#include <stdio.h>
#include<string.h>
int main()
{
char str1[100], str2[100];
printf("\n Please Enter the String that you want to Copy : ");
gets(str2);
//memset(str1, '\0', sizeof(str1));
strncpy(str1, str2, 7);
printf("\n The Final String after Copying = %s", str1);
}
尽管给定的字符串是有效的,但该函数仅复制了。这是因为我们将复制函数限制为前7个字符(包括空格)。
Please Enter the String that you want to Copy : Learn C Programming
The Final String after Copying = Learn C
我来更改Size值看看...
