格式化输入与输出

格式化输入与输出

今天主要介绍下c语言中比较重要的两个函数,sprintf和ssconf。

1.sprintf-格式化输出
man手册描述
在这里插入图片描述
用的比较多的sprintf函数接口

int sprintf(char *str, const char *format, ...);

将format字符串输出到str的地址之中。

2.sscanf-格式化输入
man手册描述太多,此处不贴出来了,请自行去man 3 sscanf(man 手册使用自行百度,或者查看我以前博客“c语言处理字符串”)

函数原型

int sscanf(const char *str, const char *format, ...);

将str字符串中的数据提取出来。

请看两个函数使用的示例代码

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

#define STRING "name:%s ,age:%d ,sex:%s ,hobby:%s "

int main(int argc, const char *argv[])
{
        //格式化输出
        char date[64];

        memset(date,0,64);

        sprintf(date,STRING,"xiaoli",20,"man","runing,reading,shopping");

        printf("%s\n",date);

        //格式化输入
        char name_str[16];
        int age;
        char sex_str[16];
        char hobby_str[32];

        memset(name_str,0,16);
        memset(sex_str,0,16);
        memset(hobby_str,0,32);

        sscanf(date,STRING,name_str,&age,sex_str,hobby_str);

        printf("name:%s\n",name_str);
        printf("age:%d\n",age);
        printf("sex:%s\n",sex_str);
        printf("hobby:%s\n",hobby_str);

        return 0;
}

编译运行
在这里插入图片描述
注意:字符串输入时,会以空格结束。
在这里插入图片描述

发布了73 篇原创文章 · 获赞 6 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_38240926/article/details/100996403