snprintf的用法

  • 时间:
  • 来源:互联网
  • 文章标签:

 

int snprintf(char*str, size_t size,constchar*format, ...);

函数说明:

最多从源串中拷贝size-1个字符到目标串中,然后再在后面加一个0。所以如果目标串的大小为size的话,将不会溢出。

函数返回值:

若成功则返回欲写入的字符串长度,若出错则返回负值。

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

void main(){
    char *p = "My name is HDS";
    int len = 4.;
    char s[100];
    snprintf(s , sizeof(s) , "%s" , p);//如果p的长度比s短则全部输出到s中,如果p比s长则只输出sizeof(s)-1个字符到s中
    printf("%s \n" , s);
    snprintf(s , sizeof(s) , "%.*s" ,len ,  p);//如果len合理,输出p的len个字符到s中
    printf("%s \n" , s);

}

输出结果:

本文链接http://www.taodudu.cc/news/show-83169.html