设为首页 加入收藏

TOP

printf()函数详细了解(二)
2018-01-03 06:06:40 】 浏览:599
Tags:printf 函数 详细 了解
t;%.8s",id_str+6); printf("当前用户的生日是%s",brithday); system("pause"); }
#include 
  
   
#include 
   
     /* 借助移动字符地址实现反向截取字符串 @author ittimeline@163.com @date 2018/1/1 20:56 @website www.ittimeline.net */ void sprintf_split() { //从左向右截取 char taskstr1[100] = "task"; char liststr1[100] = "list123"; char taskliststr1[100] = {0}; sprintf(taskliststr1,"%s%.4s",taskstr1,liststr1);//liststr从左向右截取四个长度的字符 printf("taskliststr1=%s",taskliststr1); system(taskliststr1); //从中间部分截取 char taskstr2[100] = "task"; char liststr2[100] = "123list123"; char taskliststr2[100] = { 0 }; sprintf(taskliststr2, "%s%.4s", taskstr2, liststr2+3);//liststr从左向右截取四个长度的字符,该字符地址向后移动3个字符(这样实现将左边的123字符丢弃) printf("taskliststr2=%s", taskliststr2); system(taskliststr2); system("pause"); }
   
  

在日常开发中,printf()最常用的使用场景就是解析各种数据类型,例如整数、浮点数、字符、字符串等等。

printf()函数解析整数时常用的格式如下

整数按进制分为八进制、十进制、十六进制,默认为十进制

十进制整数按照有无符号分为有符号整数和无符号整数

格式化字符串 解析方式
%d/%i 有符号十进制整数
%u 无符号十进制整数
%o 无符八进制整数
%x 无符号十六进制整数
%lld 有符号long long类型

printf解析整数的总结案例如下所示

#include 
  
   
#include 
   
     /* printf解析整数总结 %d %i 有符号十进制 %u 无符号整数 %o 无符号八进制 %x 无符号十六进制 @author tony ittimeline@163.com @date 2018/1/1 15:32 @website www.ittimeline.net */ void printf_int() { int num = 100; //十进制整数才有有无符号的区分 printf("100的有符号十进制表示值为%d\n",100); //输出结果显示%d和%i显示效果一样 printf("100的有符号十进制表示值为%i\n", 100); printf("100的无符号十进制表示为%u\n",100); printf("100的无符号八进制表示值为%o\n", 100); printf("100的无符号十六进制表示值为%x\n", 100); //在32位数以上的机器上int和long是等价的,占据4个字节的内存大小。 //但是在16位的机器上,short和int是等价的,都是占据2个字节的大小 //因此区分机器的不同,在解析long类型的数据时推荐使用%ld来获取正确的解析结果 long lngVal = 12345678910; printf("lngVal = %d \t lngVal=%ld",lngVal,lngVal); system("pause"); }
   
  

printf()函数解析字符和字符串的格式如下所示

格式字符串 解析方式
%c 字符
%s 字符串

printf()函数解析字符和字符串的应用案例如下所示

输出单个字符还可以使用putchar()函数实现

#include 
  
   
#include 
   
     /* printf函数处理字符和字符串 %c 输出字符 %s 输出字符串 @author tony ittimeline@163.com @date 2018/1/1 20:12 @site www.ittimeline.net */ void printf_char_str() { char ch = 'A'; printf("ch变量存储的字符是%c\n",ch); //使用putchar()函数输出一个字符 putchar(ch); char cmd[100] = "notepad"; printf("%s",cmd); system("pause"); }
   
  

printf()函数解析浮点数的格式如下表格所示

格式字符串 解析方式
%f 浮点数
%e 指数(科学计数法,一般都用来表示天文数字)
%g 选择%f和%e之间占据宽度最小的表示方式

printf()函数输出浮点数的应用案例

#include 
  
   
#include 
   
     /* printf()函数输出浮点数数据 @author tony ittimeline@163.com @date 2018/1/1 21:30 @site www.ittimeline.net */ void printf_float_double() { double dblVal = 12.3456789; printf("数据12.3456789小数点后取4位数的结果为%.4f\n",dblVal); //日常开发中极大的数据和极小的数据通常都是用指数表示 double chinese_gdp = 80000000000000; printf("今年中国的GDP是%e\n",chinese_gdp); printf("****************华丽的分割线********************\n"); //%g 自动选择宽度比较小的数据格式存储(%f或者%e),可以节约内存 //double db = 1234567890000; double db = 1234.56789; //%f默认保留的小数点后六位, 输出结果时会进行四舍五入 printf("%f\n, %e\n, %g\n", db, db, db);//g自动选择宽度较短(%f|%e)的一个进行打印 system("pause"); }
   
  
首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇句芒算法(morn)详情:矩阵运算 下一篇C单链表的实现代码教程

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目