CSAPP第二章家庭作业2.60

题目

2.60.1

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>

unsigned replace_type(unsigned x, int i, unsigned char b) {
char *p = (char *)&x;
while(i --) p ++;
*p = b;
return x;
}

int main() {
printf("%x\n", replace_type(0x12345678, 2, 0xAB));
printf("%x\n", replace_type(0x12345678, 0, 0xAB));
return 0;
}

总结

使用char指针替换某字节数据