如何使编译后的程序运行时将源程序原样打印出来
char s[] ={
10,10,105,110,116,10,109,97,105,110,32,40,41,123,10,9,105,110,116,32,105,59,10,10,9,112,117,116,115,32,40,34,99,104 32, 40, 34, 37, 100, 44, 32, 34, 44, 32, 115, 91, 105, 93, 41, 59, 10, 9, 112, 114, 105, 110, 116, 102, 32, 40, 34, 48, 125, 59, 34, 41, 59, 10, 9, 112, 117, 116, 115, 32, 40, 115, 41, 59, 10, 125, 0};
int
main(){
int I;
puts(" char s[]= { ");
for(I = 0;s[I];i++)
printf ("%d,",s[I]);
printf(" 0 };");
卖出期权;
}
#包括
#定义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);
关闭(f);
}
}
第一个程序将数组中的数字与ascii码对应起来,看看它们是什么。
第二个程序从硬盘中读出可执行程序的源文件,并输出到屏幕上。
发布:
# include
# include
# include
# include
int
main(void)
{
printf(" % s \ n ",_ _ FILE _ _);
return(0);
}
我有一个问题。这个节目的通用性怎么样?这些我不太了解,因为我用的编译器很少。
前提是代码文件存在于当前目录中。
在这种情况下,我不知道你为什么不使用系统命令来显示源文件。
0条评论