类型 :STRING 大小:可变 长度最大:255 字符串类型,第一字节指明长度,其后是字符串内容

绝地大反击 2014-06-05 09:54:16
类型 :STRING 大小:可变 长度最大:255 字符串类型,第一字节指明长度,其后是字符串内容
这个应该怎么定义好了?

...全文
445 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
绝地大反击 2014-06-05
  • 打赏
  • 举报
回复
引用 9 楼 u011362822 的回复:

typedef struct
{
    unsigned char length;
    char* data;
}STRING;
没注意楼主说的长度最大255,已改正; 在我的项目中,我用到了很多这种结构体,很实用;
嗯,谢谢啦!
还差得远呢 2014-06-05
  • 打赏
  • 举报
回复

typedef struct
{
    unsigned char length;
    char* data;
}STRING;
没注意楼主说的长度最大255,已改正; 在我的项目中,我用到了很多这种结构体,很实用;
还差得远呢 2014-06-05
  • 打赏
  • 举报
回复

typedef struct
{
    int length;
    char* data;
}STRING;
这样就行了
starytx 2014-06-05
  • 打赏
  • 举报
回复
引用 4 楼 twj5817 的回复:
typedef struct { char length; char* m_str; } STRING; 这样写吧,然后需要用到的时候就指定length,动态申请m_str的空间吧,但是这个最大长度应该就不止255了吧?
支持此楼做法。不过感觉把长度改成无符号char会好一些(范围0~255),然后第二个元素就是一个字符指针,可以根据第一个信息动态开辟相应长度的空间(注意结束符还需要额外的一个字节)
u012997273 2014-06-05
  • 打赏
  • 举报
回复
引用 1 楼 starytx 的回复:
定义成char *就可以了,不用指定长度,只要你确定好结束符'\0'就可以了
呵呵
绝地大反击 2014-06-05
  • 打赏
  • 举报
回复
typedef struct { char length; char* m_str; } STRING; 这样写吧,然后需要用到的时候就指定length,动态申请m_str的空间吧,但是这个最大长度应该就不止255了吧?
buyong 2014-06-05
  • 打赏
  • 举报
回复
typedef struct { USHORT length; char* m_str; } STRING;
绝地大反击 2014-06-05
  • 打赏
  • 举报
回复
可以写出来看看吗?因为题目要求这个要第一字节制定长度,想了半天都不知道要怎么弄才好了
starytx 2014-06-05
  • 打赏
  • 举报
回复
定义成char *就可以了,不用指定长度,只要你确定好结束符'\0'就可以了

70,024

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧