1、c中的变长参数
void fun(para1, para2, ..,paran, ...)
para1...paran 是有名参数,至少要有一个,... 部分代表变长参数
操作中主要用到一个变量和三个宏,包含在<stdarg.h>中
1.va_list 该类型用于顺序访问无名类型
2.va_start 只想第一个无名参数
3.va_arg(va_list, type) 取出类型为type的参数,并step到下一个参数
4.va_end 用于最后的清理工作
2、i++ , ++i的效率问题
i++ 相当于如下语句
int j = i;
i++;
return j;
中间会有一个临时变量出现
++i 相当于如下语句
i = i+1;
return i;
明显++i效率要高一
3、有关 char* p = \"Yongqing\"
p与q的区别
1、p是一个指针变量,q是一个数组变量,这个可以用sizeof测出
2、p指向的的静态数据区, 可以将字串返回, q指向栈中的局部数据,离开fun后q即被释放。
3、p的值可以被修改,但p中的内容不能被修改,
q的值不能被修改,但q中的内容可以被修改