E. Functions
1. to use a function you need: a function prototype; a function definition; function call.
2. scope: function scope, file scope...
F. Numeric Arrays
1. C does not check to see if you try to access an array outside of its range!!!
2. while( fscanf(....) != EOF)
G. Strings and Pointers
1. puts, fputs, putchar, fprintf, strcpy, strlen
2. sizeof(Array_name) array_name without brackets DOES NOT mean an address.
3. char *aa = "a pointer";
char bb[] = {"an array"}; // this two is different in memory!!! aa is a pointer(stack) to const space(in global variables or program instructions), while bb a string array(holds the chars in stack);
4. Heap & Stack:
Heap is in low addresses, grows and shrinks as memory is reserved and freed;
Stack is in high addresses, grows and shrinks as functions are called and executed.
H. Structures and Large program design
1. A structure may require more than all member's bytes; depends on the particular C compilier;
2. regesiter/auto/extern/static/typedef
3.bitwise manipulations
阅读(1120) | 评论(0) | 转发(0) |