|
|
发表于 2019-2-22 16:12:49
|
显示全部楼层
- #include <stdio.h>
- #include <stdint.h>
- typedef struct TagPlayer
- {
- int id;
- int level;
- } Player;
- int *search(char *buf, size_t length)
- {
- const Player player = {1, 8};
- for(size_t i = 0; i < length; ++i)
- {
- if(player.id == ((Player *)&buf[i])->id && player.level == ((Player *)&buf[i])->level)
- return &buf[i];
- }
- return NULL;
- }
- int main(void)
- {
- char buf[100];
- for(size_t i = 0; i < 100; ++i)
- buf[i] = i;
- ((Player *)&buf[12])->id = 1;
- ((Player *)&buf[12])->level = 8;
- printf("%.8x\n", search(buf, 100));
- ((Player *)&buf[12])->id = 1;
- ((Player *)&buf[12])->level = 9;
- printf("%.8x\n", search(buf, 100));
- return 0;
- }
复制代码- 012ff85c
- 00000000
- 请按任意键继续. . .
复制代码 |
评分
-
查看全部评分
|