snprintf使用.*和额外参数指定字符串格式化宽度
来源:互联网 发布:mysql 链接服务器 编辑:程序博客网 时间:2024/05/19 03:27
参考:
http://www.cplusplus.com/reference/cstdio/printf/
http://stackoverflow.com/questions/7899119/what-does-s-mean-in-printf-in-c
【代码】
#include <stdio.h>#include <string.h>int main() {char dir[] = "/home/yasi/this/place/file1";char cmd[1024] = {0};char * p = strrchr(dir, '/');snprintf(cmd, sizeof(cmd), "rm -f %.*s/*.txt", p - dir, dir);printf("cmd:~%s~\n", cmd);return 0;}
第9行中,"rm -f %.*s/*.txt" 中的 ".*" 对应后面的 p - dir 参数,它们指定了在用dir字符串格式化cmd的时候,只使用dir字符串的 ""/home/yasi/this/place" 部分,即前21个字符。
【输出】
cmd:~rm -f /home/yasi/this/place/*.txt~
【注意】
.* 和后面的 (p - dir) 是属于格式化参数列表之外的 “额外的参数”。
1 0
- snprintf使用.*和额外参数指定字符串格式化宽度
- snprintf()和sprintf()格式化字符串
- 关于sprintf和snprintf格式化字符串输出到字符串缓冲区
- C# String.Format 指定字符串宽度和对齐方式
- C# String.Format 指定字符串宽度和对齐方式
- 使用*号作为格式化宽度
- 字符串在指定区域内按照指定的字体显示时,需要的高度和宽度
- 学无止境--> CString Format 格式化动态字符串宽度
- pyqt信号和槽传递额外参数
- PyQt 信号和槽传递额外参数
- pyqt信号和槽传递额外参数
- 不使用额外空间字符串去重
- 打印中按指定宽度截取字符串
- sprintf和snprintf的正确使用
- 关于sprintf和snprintf的正确使用
- sprintf和snprintf的正确使用
- strcpy ,strncpy ,strlcpy和snprintf的使用
- printf格式化输出时动态指定字符宽度
- asp.net webconfig文件详解
- Cloud Foundry中DEA启动应用实例时环境变量的使用
- 电子商务宝盒PRIMO
- 经纬财富:深圳良好的风险控制
- AM3359 中利用GPMC控制器驱动FIFO
- snprintf使用.*和额外参数指定字符串格式化宽度
- 写的一个简简单单的php数据库调用类和调用例子.
- android 使用shape做背景
- Json随笔
- PHP 正则表达式
- gnuplot 绘制 柱状图
- 1.3 用函数式编程提高生产力
- 在表格中显示数据表的内容
- 『黑马程序员』第四话<String>