cstdio和stdioh,如何说服同学在写C程序的时候用cstdio而不是stdioh

1,如何说服同学在写C程序的时候用cstdio而不是stdioh使用std namespace的好处在于避免污染global namespace , 然而cstdio并不能做到这一点 。更何况cstdio里面还有一大坨东西不在std namespace下面 , 真用起来那就是std::和::掺杂着揉在一起 。所以使用cstdio非但没有获得应有的好处,反而会让代码风格更加混乱 。我是来看评论的
2,c语言中的头文件cstdio中的c与stdioh中h有什么区别stdio.h是先到你程序所在文件夹找头文件,若没找到再去VC或TC安装目录下找头文件<stdio.h>只到VC或TC安装目录下去找头文件stdio.h他是c语言中一个库函数 , 在他的左右两边加“”和<>都是一样的,在vc++环境中,电脑都能识别,这两种写法不同 , 但要表达的意思是一样的 。举个简单的#include<stdio.h>#include"stdio.h"void main()void main()
3,如何说服同学在写C程序的时候用cstdio而不是stdioh对的,C++的系统头文件基本都是C开头的 , 他们在std命名空间内但是C++ 是兼容C语言的 , 所以你写stdio.h也不会出错 。使用std namespace的好处在于避免污染global namespace,然而cstdio并不能做到这一点 。更何况cstdio里面还有一大坨东西不在std namespace下面,真用起来那就是std::和::掺杂着揉在一起 。所以使用cstdio非但没有获得应有的好处,反而会让代码风格更加混乱 。【cstdio和stdioh,如何说服同学在写C程序的时候用cstdio而不是stdioh】
4,头文件cstdio和stdioh的区别在C语言中,stdio.h 头文件是主要的 。而在后来的C++语言中,C只是C++的一个子集,且C++中,已不推荐再用C的类库,但为了对已有代码的保护,还是对原来的头文件支持 。cstdio文件的内容是这样的:#if <TRADITIONAL C HEADERS>#include <stdio.h>namespace stdusing ::fclose;using ::feof;using ::ferror;using ::fflush;using ::fgetc;using ::fgetpos;using ::fgets;using ::FILE;using ::clearerr;using ::fopen;using ::fprintf;using ::fpos_t;using ::fputc;using ::fputs;using ::fread;using ::freopen;using ::fscanf;using ::fseek;using ::fsetpos;using ::ftell;using ::fwrite;using ::getc;using ::getchar;using ::gets;using ::perror;using ::putc;using ::putchar;using ::printf;using ::puts;using ::remove;using ::rename;using ::rewind;using ::scanf;using ::setbuf;using ::setvbuf;using ::size_t;using ::sprintf;using ::sscanf;using ::tmpfile;using ::tmpnam;using ::ungetc;using ::vfprintf;using ::vprintf;using ::vsprintf;}#endif说明依预定义不同 , 包含的内容是不一样的 。5,C中stdafxh和stdioh的区别stdio.h是C/C++中标准的头文件,这个文件是系统头文件,由编译器厂商提供 。stdafx.h是vc生成工程是生成的用户头文件,属于工程的一部分,stdafx.h是vc工程的预编译头文件 。用于包含工程中每个都文件都要包含的文件 。用于加快编译速度和整理代码结构比如工程由四个cpp文件组成a.cppb.cppc.cppd.cpp每个cpp文件都要包含stdio.hstdlib.hwindows.h那么可以把#include &lt;stdio.h&gt;#include &lt;stdlib.h&gt;#include &lt;windows.h&gt;放到stdafx.h中而每个cpp只需要#include "stdafx.h"即可这样在便于维护代码,配合上编译器的预编译功能,还可以加快编译速度如果不喜欢vc自动生成stdafx.h在生成工程时选中empty project即可6,c语言中的头文件例如cstdio和stdiohcstdio中的c与stdioh的h有什么区stdio.h 是 c 语言标准库 中的头文件 。cstdio 是 c++ std namespace 里的库函数 头文件 。功能上 都是 标准输入输出函数 (头文件/函数原型声明),但它们是不同的 文件,内容 也不完全相同 。用 cstdio 时 , 若程序里 未加 using namespace std 时 , 调用这个名字空间的函数 需加std::c++ 程序应当用 cstdio ,  C 程序应当用 .h;详见:http://baike.baidu.com/item/cstdiostdio.h是先到你程序所在文件夹找头文件,若没找到再去VC或TC安装目录下找头文件只到VC或TC安装目录下去找头文件 stdio.h他是c语言中一个库函数,在他的左右两边加“”和<>都是一样的,在vc++环境中,电脑都能识别,这两种写法不同,但要表达的意思是一样的 。举个简单的 #include#include"stdio.h"void main()void main(){printf("C yu yan");{printf("C yu yan");}} 这两个c语言程序输出的都是c yu yan这几个字母,这两个“”和<>你喜欢哪一个你就写哪一个 , 所表达的意思都是一样的 。寻找文件的步骤不同 。stdio.h为标准输入输出的头文件,在编译时直接寻找系统中的头文件(也就是安装vc后就存在的文件,一直放在某个文件夹下);“stdio.h”则先在当前目录寻找名字为stdio.h的头文件,若没有则再向系统头文件中找 , 此种形式多用来包含自己写的文件(.h或.cpp文件).补充一句:如果你默认安装vc6.0,则此文件在此目录下c:\program files\microsoft visual studio\vc98\include;简单说就是找文件时方式有区别 。

    推荐阅读