strncpy、strncat、strncmp函数的使用
strncpy 函数的使用
char * strncpy ( char * destination, const char * source, size_t num );
#include <stdio.h>
#include <string.h>
//strncpy函数使用
int main()
{
char arr1[] = "abcdef";
char arr2[10] = { 0 };
//将arr1中的字符串前四个字符复制到arr2中
strncpy(arr2, arr1, 4);
printf("arr1:%s\n", arr1);
printf("arr2:%s\n", arr2);
return 0;
}
strncat 函数的使⽤
char * strncat ( char * destination, const char * source, size_t num );
#include <stdio.h>
#include <string.h>
//strncat函数使用
int main()
{
char arr1[10] = "abcdef";
char arr2[] = "ghl";
//将arr2中的字符串追加到arr1中
strncat(arr1, arr2, 3);
printf("arr1:%s\n", arr1);
printf("arr2:%s\n", arr2);
return 0;
}
strncmp 函数的使⽤
int strncmp ( const char * str1, const char * str2, size_t num );
-
⽐较str1和str2的前num个字符,如果相等就继续往后⽐较,最多⽐较num个字⺟,如果提前发现不⼀ 样,就提前结束,⼤的字符所在的字符串⼤于另外⼀个。
-
-
程序演示
#include <stdio.h>
#include <string.h>
//strncmp函数使用
int main()
{
char arr1[] = "abcdef";
char arr2[] = "avcdfg";
//比较arr1和arr2指定的前n个字符
int ret = strncmp(arr1, arr2, 3);
if (ret > 0)
{
printf("arr1 > arr2\n");
}
else if (ret < 0)
{
printf("arr1 < arr2\n");
}
else
{
printf("arr1 = arr2\n");
}
return 0;
}