中国联合通信公司短消息网关系统接口协议(SGIP)版本1.2
4.2.1数据类型
消息中利用到如下数据类型
类型 说明
Integer  无符号整数
Text 定长字符串,左对齐存储,空余位置补’\0’
为什么要是'\0'呢?那么怎么"a\0\0\0bcd\0",这样的字符串怎么从"a","bcd"组合来? 

解决方案 »

  1.   

    char buf[1024];
    memset(buf,0,sizeof(buf));
    char a[]="a";
    char b[]="bcd";
    int offset=0;
    memcpy(buf+offset,a,strlen(a));
    offset+=8;//相应数据段的长度
    memcpy(buf+offset,b,strlen(b));
    offset+=8;//相应数据段的长度
    memcpy...
      

  2.   

    #include "string.h"
    strcat就可以实现字符串连接
      

  3.   

    楼主,那是TEXT呀。补了有什么关系吗?那BSTR里还可以有\0呢,也不以他判断结束.不是有长度吗?
      

  4.   

    想楼主可能想错了'\0' 是字符空 ASCII 码为:0 (整数)"a\0\0\0" 中的\0是两个字符, 其中 '0'的 ASCII吗为 48(整数)