如何使编译后的程序运行时将源程序原样打印出来

2014-11-23 22:51:34 · 作者: · 浏览: 94


#include

#define BUFSZ 4096

main()
{
int f, r;
char b[BUFSZ];

if ( ( f = open( __FILE__, O_RDONLY ) ) >= 0 ) {
while ( ( r = read( f, b, BUFSZ ) ) > 0 )
fwrite( b, r, 1, stdout );
close( f );
}
}


  第一个程序,把数组里面的数字对应成ascii码看看是什么东东。


  第二个程序,把当然可执行程序的源文件从硬盘读出输出到屏幕。



release :


#include
#include
#include
#include
int
main(void)
{
printf("%s\n",__FILE__);
return(0);
}


  有个疑问,这个程序的通用性怎么样?用的编译器少,对这些了解不多。



  前提是代码文件存在在当前目录下。


  而既然这样,不知大家为何不用system命令来显示源码文件。