zoukankan      html  css  js  c++  java
  • snprintf用法

    1. 返回的是想要复制的字符串长度(不包括''),如源字符串是"12",则返回2;如源字符串是"123",则返回3;而不管目标字符串的长度是多少.

    2. 最多复制sizeof(dst)-1个字符,剩余的一个用''补上.

    #include<iostream>
    #include<stdio.h>
    using namespace std;
    
    int main()
    {
        char dst[3];
        int len = 0;
    
    // 源字符串长度 <= sizeof(dst) - 1, 此时copy整个源字符串, 并在copy后的目的字符串后加'' len
    = snprintf(dst, sizeof(dst), "1"); cout << "len=" << len << endl; cout << dst << endl;
    len
    = snprintf(dst, sizeof(dst), "12"); cout << "len=" << len << endl; cout << dst << endl;
    // 源字符串长度 > sizeof(dst) - 1, 此时copy sizeof(dst) - 1个源字符串中的字符到目标字符串,并在目标字符串后加'' len
    = snprintf(dst, sizeof(dst), "123"); cout << "len=" << len << endl; cout << dst << endl; len = snprintf(dst, sizeof(dst), "1234"); cout << "len=" << len << endl; cout << dst << endl; return 0; }

    len=1
    1
    len=2
    12
    len=3
    12
    len=4
    12

  • 相关阅读:
    ASP.NET MVC 学习之路-2
    ASP.NET MVC 学习之路-1
    mvp框架
    Linq基础
    C# Lambda表达式
    三层架构基础
    Protobuf-net基础
    AutoResetEvent和ManualResetEvent
    解题报告——POJ 2299
    解题报告——POJ 2726
  • 原文地址:https://www.cnblogs.com/helloweworld/p/3746708.html
Copyright © 2011-2022 走看看