[C指针]指针与字符串:snprintf() 用函数初始化字符串

2019-04-15  本文已影响0人  AkuRinbu

学习笔记

《深入理解C指针》
http://www.ituring.com.cn/book/1147
第5章 指针与字符串

用函数初始化字符串,再返回

1、给函数传递一个空缓冲区让它填充并返回

  • 必须传递缓冲区的地址和长度;
  • 调用者负责释放缓冲区;
  • 函数通常返回缓冲区的指针。
Item: Axle Quantity: 25 Weight: 45

完整源码

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

char* format(char *buffer, size_t size,
        const char* name, size_t quantity, size_t weight) 
{
    snprintf(buffer, size, "Item: %s Quantity: %u Weight: %u",
            name, quantity, weight);
    
    return buffer;
}

int main()
{   
    char buffer[100];
    printf("%s\n",format(buffer,sizeof(buffer),"Axle",25,45));
    printf("%s\n", buffer);

    return 0;
}

参考资料

上一篇 下一篇

猜你喜欢

热点阅读