注意
[2011-3-24 15:15]
{
E:\程序员实用算法SourceCode\CH2\CITYTEMP.C-改
C语言除法只保留整数位。所以3/2的结果是1。
所以只有三个数的话 3/2 +1才是中间那个数。
链表的头结点(header)和头指针(head)不是一回事。头结点是个真正的节点,而头指针是一个指针而已。
以后自己编写函数要有头结点,比较方便,简化逻辑。比如在第一个节点前加入节点,或删除第一个节点时。
指针要初始化,指向一个合理的内存后才能使用,比如:
char *s1 = (char *)malloc(sizeof(128));//这里的malloc是必须的,否则s1可能指向危险内存。
char *s2 = "fuck!";
strcpy(s1, s2);
char *fgets(char *s, int n, FILE *stream);
用于替代有溢出问题的gets( );
从流中读取n-1个字符,除非读完一行。最后一个字符补'\0'。
换行符也被读取。
数组初始化值的个数可少于数组元素个数。当初始化值的个数少于数组元素个数时,前面的按序初始化相应值, 后面的初始化为0(全局或 静态数组)或为不确定值(局部数组)。
}
2011-05-26 22:06:10
全局数组初始化不能有变量,像课程设计中的lpath。
double d;scanf("%lf",d);//要加上l
volatile意思为可变的 编译器不对其优化 每次都在内存中读取而不是寄存器中 用于多线程和多程序访问的变量
在程序运行不正确的时候,首先检查是不是变量写错了,例如毕设中的数组0,和1.还有时间统计中的starttime-starttime