5.  使用字符串库函数5.1 计算字符串长度,函数原型如下:
size_t strlen(const char *s);
size_t 是一个无符号整型 unsigned int
该函数返回第一个空字符\0前面的字符个数。
#include <string.h>
// 获得字符串长度
void test_strlen(){
           char str[] = "Hello World!";
           size_t len = strlen(str);
           printf("len=%d\n",len);
           // 遇到\0空字符将返回
           char *str1 = "Hello \0 World!";
           size_t len1 = strlen(str1);
           printf("len1=%d\n",len1);
}
5.2 字符串拷贝
函数原型
char * stpcpy(char *s1, const char *s2);
我们不能直接通过赋值的方式为字符数组赋值,(初始化除外)例如:
// 字符串拷贝
void test_strcpy(){
           char str[10];
           // str = "Hello"; // 不能直接赋值
           char str1[] = "Hello"; // 初始化可以
           char *str2;
           str2 = "Hello";

           char s[20];
           // 返回值是指向s的字符指针
           char *s1 = strcpy(s,"Hello");
           puts(s);
           puts(s1);
}
5.3 字符串连接
函数原型
char * strcat(char *restrict s1, const char *restrict s2);
// 字符串连接
void test_strcat(){
           char s[20];
           strcpy(s,"Hello");
           strcat(s," World!");
           puts(s);
}
5.4 字符串比较
函数原型
int strcmp(const char *s1, const char *s2);
返回值 -1 0 1
// 字符串比较
void test_strcmp(){
           char s1[] = "abc";
           //char s2[] = "abd"; // -1
           //char s2[] = "abc";   // 0
           char s2[] = "aac";    // 1
           int r = strcmp(s1,s2);
           printf("r=%d\n",r);

}

该博客教程视频地址:http://geek99.com/node/1012

原文出处:http://geek99.com/node/869#