总共24个数据,如下:
ID号: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
数据 : 10 21 30 21 20 35 10 10 35 21 30 20 21 10 20 30 15 30 20 21 10 35 20 35
ID号对应的是地址, 不可变; 数据对应的是可以输入的任意数值, 现请教一套算法 : ID和数据必须保持锁定,ID号的数量上可以设定的,比如15个,下面相应的数据也就变成了15个,将相同的数据分成一组,如上面例子,
我的思路是 数据10 送入数组 tab_data10【】,相应的地址送入tab_addr10【】;但是判断上较复杂,求更好的算法,有程序加莫元。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
哦,这样啊。
看这样行不:
定义一个结构体:
第一个字节表示数据
第二个字节表示有相同数据的ID的总数
第三个字节开始就是逐个的ID号(数组)
参考:变长结构体:http://blog.sina.com.cn/s/blog_532f78a40100t9ad.html
只要总的ID号个数固定,那么就只需要定义一个固定长度的数组作为缓冲区,
在缓冲区中建立一个挨着一个的结构体即可。(这样能避免malloc、free)
一周热门 更多>