C Traps and Pitfalls

2.1  typedef

	void *signal(int, (void(*) (int))) (int);

	typedef void (*HANDLER) (int);
	HANDLER signal(int, HANDLER);

 

3.3 下面数组和指针的区别

	extern char *hello;
	extern char hello[];


4.3 命名冲突与static修饰符

static修饰符使得变量的作用域限制在一个源文件内,对于其他源文件,变量是不可见的。

static修饰符不仅适用于变量,也适用于函数。

我们可以在多个源文件中定义同名的函数,只要所有的函数都被定义为static,或者仅仅只有其中一个函数不是static。


 4.4 形参、实参与返回值

#include <iostream>
using namespace std;

int main()
{
	int i;
	char c;

	for (i=0; i<5; i++)
	{
		scanf("%d", &c);
		printf("%d ", i);
	}
	printf("\n");

	system("pause");
	return 0;
}

input:0 1 2 3 4

output:0 0 0 0 0 1 2 3 4


你可能感兴趣的:(C Traps and Pitfalls)