#include"stdio.h"和#include<stdio.h>区别?
尖括号里通常是系统头文件,引号里通常是自定义头文件!编译时寻根路径不同!
#include<stdio.h>指系统从系统目录开始搜索stdio.h这个文件。
#include“stdio.h”指系统先在当前目录(源文件所在目录)搜索stdio.h这个文件,若没找到,再到系统目录寻找。
int main( int argc, char** argv )
main(int argc, char **argv)和main(int argc, char *argv[])一个意思
说一下main(int argc,char *argv[])函数的两个形参,
第一个int argc,是记录你输入在命令行上的参数(字符串)个数;
第二个*argv[]是个指向字符串的指针数组,即数组元素是指向输入在命令行上的每个参数(字符串)的指针。
其中 argv[0] 是存储程序的名称;argv[1]是一个指向第1个命令行参数的指针, argv[2]指向第二个命令行参数的指针;
如:
int main(int argc, char* argv[])
{
int i;
for (i = 0; i<argc; i++)
cout<<argv[i]<<endl;
return 0;
}
执行时敲入
F:\MYDOCU~1\TEMPCODE\D1\DEBUG\D1.EXE aaaa bbb ccc ddd
本例子中argc为5
输出如下:
F:\MYDOCU~1\TEMPCODE\D1\DEBUG\D1.EXE ----- argv[0]
aaaa ----- argv[1]
bbb ----- argv[2]
ccc ----- argv[3]
ddd ----- argv[4]
C++ iostream和iostream.h的区别
#include <iostream.h>非标准输入输出流
#include <iostream>标准输入输出流
C++中为了避免名字定义冲突,特别引入了“名字空间的定义”,即namespace。
当代码中用<iostream.h>时,输出可直接引用cout<<x;
//<iostream.h>继承C语言的标准库文件,未引入名字空间定义,所以可直接使用。
当代码中引入<iostream>时,输出需要引用std::cout<<x;
如果还是按原来的方法就会有错。此时使用<iostream>时,引入std::有以下方法:
1.
开头加using namespace std;
cout<<x;
2.
using std::cout;
cout<<x;
3.
最基本的std::cout<<x;
(有“.h”的就是非标准的,C的标准库函数,无“.h”的,就要用到命令空间,是C++的。还有一部分不完全是有“.h”和没“.h”的差别。例如:math.h和cmath)