C字符串分割、字符串错误码的使用

字符串分割

        strtok函数是一个C标准库函数,用于将字符串分割成子字符串。它接受两个参数:被分割的字符串和分隔符字符串。函数在第一次调用时返回被分割的字符串中的第一个子字符串,以后每次调用都返回剩余的子字符串,直到字符串被完全分割。

        所在头文件:#include

        函数原型:char *strtok(char *str, const char *delim)

  • str:被分割的字符串,在第一次调用时传入被分割的字符串,以后传入NULL。
  • delim:分隔符字符串,用于标识子字符串的分隔位置

通过上边的讲解下面通过一段代码来展示字符串分割是如何使用的

#define _CRT_SECURE_NO_WARNINGS 1

#include

int main() 
{

char arr7[] = "[email protected]";
char copy[20];
strcpy(copy,arr7);//使用strtok,前记得创建临时字符串空间,在临时空间上操作
char sep[] = "@.";
//char* ret2=strtok(copy,sep);第一次访问临时字符串sep中第一个分隔符前面的字符串
//printf("%s\n",ret2);
//ret2=strtok(NULL,sep);第二次访问第一个分隔符和第二个分隔符之间的字符串
//printf("%s\n",ret2);
//ret2=strtok(NULL,sep);第三次访问第二个分隔符和第三个分隔符之间的字符串
//printf("%s\n",ret2);
//这样一次一次写太麻烦了,写一个简便的使用方法

char* ret2 = NULL;
    //   开始获取               执行条件         每次获取
for (ret2 = strtok(copy, sep); ret2 != NULL; ret2 = strtok(NULL, sep)) 
{
    printf("%s\n",ret2);
}

return 0;

}

字符串错误码

        库函数在执行的时候,发生了错位,会将一个错误码存放errno这个变量中,errno是c语言提供的一个全局的变量,类似于打开浏览器报404,用于程序逻辑发生错误时,给与提示信息告诉是哪里错误的。下面通过一段代码介绍字符串错误码的使用

int main()

{

//c语言中可以操作文件

// 操作文件的步骤

//1.打开文件

//2.读/写

//3.关闭文件

//打开文件

FILE* pf = fopen("data.txt","r");

if(pf==NULL)

{

        //这里的strerror(errno)就是错误码提示,这种是事先别人写好的

        printf("fopen: %s\n",strerror(errno));

        //这个也可以错误提示,只不过“”号直接的提示信息是自己写的

        perror("fopen");

        return 0;

}

//读文件

//....

//关闭文件

//fclose(pf);

return 0;

}

你可能感兴趣的:(c语言)