#include <stdio.h>
#include <stdlib.h>
#include <string.h>
/*
*sprintf 与 snprintf的区别
*/
void main(){
int a, b;
int i = 10;
char c1[100];
char c2[100];
//将字符数组格式化,返回格式化完成后数组大小,不管数组大小
a = sprintf(c1, "result is %d", i);
printf("%s %d\n", c1, a);
//VC6.0里面是_snprintf,但在有的编译器里面没有下划线
//必须要指定指定数组的容量,一旦越界就返回-1,否则返回字符数量
//传的值是数组容量,必须比字符数量大1以上,如传13,返回12;如果传12就会出错,并返回-1;
b = _snprintf(c2, 13, "result is %d", i);
printf("%s %d\n", c2, b);
//与一些字符数组操作函数类似,带n的函数需要指定大小
strcpy(c1,"hello");
puts(c1);
//参数值要大于字符串长度,5个字符的话至少需要传入6,才会连‘\0’也拷贝
//否则只能拷贝指定个数的字符
strncpy(c2, "world", 6);
puts(c2);
}
- 大小: 10.9 KB
分享到:
相关推荐
用于了解安全函数strcpy_s、strncpy_s、snprintf_s、memcpy_s
printf,sprintf,sprintf_s,_snprintf_s,vsprintf,vsnprintf,_vsnprintf_s,_vscprintf等格式化字符串使用与区别例子
经过跟踪调试, 发下不少 bug 源于 sprintf 和 ... 您可能感兴趣的文章:浅析C语言中printf(),sprintf(),scanf(),sscanf()的用法和区别基于C语言sprintf函数的深入理解C++中sprintf()函数的使用详解基于C++中sprintf的错
snprintf的正确用法:snprintf(dest, sizeof(dest), “%s”, src); strncpy的问题:1.size一定要用sizeof(dest)或sizeof(dest)-1,不可误用sizeof(src). 2.手工填0. 务必要把dest的最后一个字节手工设置为0. 因为...
学习sprintf 时总是会有数组越界的现象,如何解决这种越界呢?在keil最好的方法就是使用snprintf,本文就是去研究C语言是如何处理sprintf()的内容
snprintf的引入是为了解决 sprintf函数缓冲区溢出问题。 二、scanf函数族用于分析输入字符串,并将字符 序列转换成指定类型的变量。格式之后的个参数 包含了变量的地址,以用转换结果初始化这些变量。
该库适合所有使用C ++但坚持使用类似于printf函数(例如printf , fprintf , sprintf , snprintf等)的人。 pprintpp通过对字符串进行预处理,将其类型安全的适配器预处理为printf格式,它的朋友也期待着这种格式...
实现与printf , vprintf , snprintf , sprintf和vsnprintf兼容的输出功能 低内存占用量,适用于嵌入式系统 重入所有API函数 操作系统就绪 要求用户为printf的API调用实现单个输出功能 具有用于操作系统的可选功能...
嵌入式系统的printf / sprintf实现 这是一个很小但已满载的printf,sprintf和(v)snprintf实现。 主要设计用于在嵌入式系统中使用,该嵌入式系统由于内存问题或避免与libc链接而无法使用printf。 使用标准的libc ...
我有以下API的计划: utf8_sprintf()utf8_vsprintf()utf8_snprintf()utf8_vsnprintf()utf8_strcasecmp()utf8_strncasecmp()可以在libcstr.h中找到文档。 它是一个文件库,但是对于那些偏爱.h和.c文件的人来说,...
11. printf()/fprintf()/sprintf()/snprintf()/vprintf()/vfprintf()/vsprintf()/vsanprintf() 12. readv()/writev() 13. read()/written() 14. msgrcv()/msgsnd() 15. revc()/recvfrom()/recvmsg() 16. send()...
完成字符串拷贝可以使用 sprintf、strcpy 及 memcpy 函数,请问这些函数有什么区别 ,你喜欢使用哪个,为什么? 答案:这些函数的区别在于 实现功能 以及 操作对象 不同。 1.strcpy 函数操作的对象是 字符...
介绍说明 C标准库源代码,能提高对C的理解,不错的哦 下载文件列表 Pack : clibsource.rar C 标准库源代码\ABORT.C C标准库源代码\ABS.C C标准库源代码\ACCESS.C C标准库源代码\ADJUSTFD.C C标准库源代码\ALGRITHM ...