关于字符串
如果要将字符一个个赋值进一个字符数组中并最后要用字符串的形式输出整个字符串,则需要手动在最后加入“\0”,不然编译器将读取不到结尾导致意想不到的后果。
定义变量的位置问题
c++里允许在for循环里定义变量,但这是有局限性的。
1.只能在for循环里定义一种相同类型变量。
for(int i = 0; i < 5; i++){}//ok:定义了一个在这个for循环里可以使用的变量i
for(int i = 0, j = 0; i < 5; i++)//ok:定义了i和j两个变量
for(int i = 0, float j = 0; i < 5; i++){}//error
- 1
- 2
- 3
其实这个不难理解,因为int i = 0 和int j = 0是用逗号隔开的,而我们平时声明变量都是以分好结束,所以编译器应该无法识别这个语句。
2.如果在循环外面还要使用该变量,一定不要在循环语句内定义!这个变量一离开for循环就死掉了。
选择合适的工具编程
如果程序要求实现一个有序列性质的东西,有随时添加数据,删除数据,插入数据等的操作,优先考虑使用容器。
容器自身有下标操作,同时可以用迭代器操作,用迭代器操作应该是更为常见的做法,但是要注意插入元素可能会使迭代器失效。
平时应该培养对这些问题模型的敏感性,知道什么时候该用什么工具来编写程序,能大大缩短编程时间。