VC++学习笔记(1)——C++语法注意点
时间:2011-03-11 来源:Leepy
1. 结构Struct和共用体Union
共用体是一种数据格式,它能够存储不同的数据类型,单只能同时存储其中的一种类型。如结构可以同时存储int、long和double,共用体只能存储int、long或double。
2. 使用cin.get(char)
使用cin输入,将忽略空格和换行符,而发送给cin的输入被缓冲,这意味着用户必须按下回车才可以把输入的内容发送给程序。
这里可以选择采用cin.get(char)进行补救,最后输入Ctrl+Z执行EOF结束。
3. 二维数组和指针数组
看这样的两个数组:
char* cities1[5] = { "Fuzhou", "Shanghai", "Beijing", "Xiamen", "Quanzhou" }; char cities2[5][10] = { "Fuzhou", "Shanghai", "Beijing", "Xiamen", "Quanzhou" };
因为二维数组的最大长度限制为10个字符,而指针数组存储的是字符串的地址,从存储空间角度说,使用指针数组更为经济;然后修改的话,二维数组是更好的选择。
4. 字符函数库cctype
在头文件cctype(老式风格中为ctype.h)
5. const int * 和 int * const 的区别
int sloth = 3; const int * ps = &sloth; int * const finger = &sloth;这种声明格式使得finger只能只想sloth,但允许使用finger来修改sloth的值。中间的声明不允许使用ps来修改sloth的值,但允许将ps指向另一个位置。
6. 函数指针
直接看例子:
double betsy(int); double pam(int); void estimate(int lines, double (*pf)(int)); int main() { int code; cout << "How many lines of code do you need? "; cin >> code; cout << "Here's Betsy's estimate: \n"; estimate(code, betsy); cout << "Here's Pam's estimate: \n"; estimate(code, pam); return 0; } double betsy(int lns) { return 0.05 * lns; } double pam(int lns) { return 0.03 * lns + 0.0004 * lns * lns; } void estimate(int lines, double (*pf)(int)) { cout << lines << " lines will take "; cout << (*pf)(lines) << " hour(s) \n"; }
相关阅读 更多 +