1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#include <stdio.h>
struct S {
char *match_start;
char *strstart;
};
int main() {
struct S _s;
struct S *s = &_s;
unsigned short int sh;
s->match_start = (char *)32522;
s->strstart = (char *)(32780);
printf("*%d,%d,%d*\n", (int)s->strstart, (int)s->match_start,
(int)(s->strstart - s->match_start));
sh = s->strstart - s->match_start;
printf("*%d,%d*\n", sh, sh >> 7);
s->match_start = (char *)32999;
s->strstart = (char *)(32780);
printf("*%d,%d,%d*\n", (int)s->strstart, (int)s->match_start,
(int)(s->strstart - s->match_start));
sh = s->strstart - s->match_start;
printf("*%d,%d*\n", sh, sh >> 7);
}
|