题目的意思是:程序可以讲自己的代码打印出来。
#include <stdio.h>
#include <stdlib.h>
extern char * _binary_test_c_start;
int main()
{
printf("%s", (char *)&_binary_test_c_start);
}
Makefile
SRC = test.c
TAR = t
ALL:test.c
objcopy -I binary -O elf32-i386 -B i386 test.c test.bin
gcc -o t test.c test.bin
原理:利用objcopy把文本文件转换成链接器可以链接的对象,从而链接器可以把程序的源代码链接进可执行的程序里面。