使用stdprn时的C编译错误

我的操作系统是:Windows 8

IDE:VS 2012

这是我的C程序。 (来自书)

/* print_it.c—This program prints a listing with line numbers! */ #include  #include  void do_heading(char *filename); int line = 0, page = 0; int main( int argv, char *argc[] ) { char buffer[256]; FILE *fp; if( argv  1) fprintf( stdprn, "\f" ); fprintf( stdprn, "Page: %d, %s\n\n", page, filename ); } 

试图编译。 打开开发人员命令提示符,然后键入

 cl print_it.c 

有这个屏幕(一堆错误和警告)

http://content.screencast.com/users/TT13/folders/Jing/media/ff48bfe2-7e83-4d93-b1c5-db7ab7e553b8/2012-08-21_1458.png

我错过了什么?

stdprn不是标准C的一部分.stdprn是一个流DOS编译器提供的。 应该避免。

您可以尝试关闭 ANSI兼容性以使stdprn正常工作。 ( 参考

你可以输入“stdout”而不是“stdprn”