zoukankan      html  css  js  c++  java
  • sprintf的用法

    先来看个程序

    #include <stdio.h>
    void main( void )
    {
        char  buffer[200], s[] = "computer", c = 'l';
        int   i = 35, j = 0;
        float fp = 1.7320534f;
       
        j  = sprintf( buffer, "String:%s/n", s);
        cout<<j<<endl;                  // j = 16
        cout<<buffer<<endl;

        j += sprintf( buffer + j, "Character:%c/n", c);
        cout<<j<<endl;                    // j = 16 + 12 = 28
        cout<<buffer<<endl;
       
        j += sprintf( buffer + j, "/tInteger:%d/n", i);
        cout<<j<<endl;                // j = 28 + 12 = 40 此处%d格式化后占2bytes
        cout<<buffer<<endl;
       
        j += sprintf( buffer + j, "/tReal:%f", fp);
        cout<<j<<endl;               // j = 40 + 14 此处%f格式化后占8bytes                     
       
        printf( "Output:/n%s/ncharacter count = %d/n", buffer, j );
    }


    sprintf, swprintf @import url(MS-ITS:dsmsdn.chm::/html/msdn_ie4.css);

    int sprintf( char *buffer, const char *format [, argument] ... );

    int swprintf( wchar_t *buffer, const wchar_t *format [, argument] ... );

    sprintf, swprintf @import url(MS-ITS:dsmsdn.chm::/html/msdn_ie4.css);

    sprintf returns the number of bytes stored in buffer, not counting the terminating null character. swprintf returns the number of wide characters stored in buffer, not counting the terminating null wide character.

    sprintf, swprintf @import url(MS-ITS:dsmsdn.chm::/html/msdn_ie4.css);

    Parameters

    buffer

    Storage location for output

    format

    Format-control string

    argument

    Optional arguments


    sprintf的返回值是不包括空白终止符的字符个数,但是经过sprintf格式化后,int占2个字节,float占8个字节。。。。

    再看下面程序

    int main()
    {
        char s[]  = "computer";
        cout<<s<<endl;
        cout<<sizeof(s)<<endl;  //9

        char s1[100];
        char* p= "haha";
        int j = sprintf(s1, "/t%s", p);
        cout<<s1<<endl;             //  haha
        cout<<j<<endl;               // 5
       
        return 0;
    };


  • 相关阅读:
    线程池、进程池(concurrent.futures模块)和协程
    python中socket、进程、线程、协程、池的创建方式和应用场景
    IO多路复用和local概念
    pymysql模块
    HTML初识
    CSS之选择器
    CSS之样式属性(背景固定、圆形头像、模态框)
    字符串格式的方法%s、format和python3.6新特性f-string和类型注解
    common-pool2 使用
    apache-common pool的使用
  • 原文地址:https://www.cnblogs.com/kex1n/p/2286570.html
Copyright © 2011-2022 走看看