好久没写,有点懒,有点忙。
但我觉得最主要的原因是,我最近遇上的问题都没什么关联性,很难让我在一篇博客里把他们都串联起来。
一个问题写一篇博客又有点小题大做了。
不管怎么样堆积了那么多问题,还是先整合一下吧。
1.声明在使用前
当然可以直接先定义再使用,但是我本人不喜欢。我更喜欢用main函数打头,不然找它要找半天。
一般情况下是函数的声明,别忘记就行。容易出错的是算上结构体的时候。
由于我不清楚结构体的声明格式,因此把结构体放在main函数前,当然这还是可以接受的。
但是会存在结构体作为函数参数的情况。如果你的习惯跟我一样,那么请注意遵循以下顺序:
定义结构体、声明函数、主函数、自定义函数
由于之前我先声明的函数,再定义结构体,导致报错:(结构体)是未定义的标识符。
我de了好久才找到这个bug!
2.文件读写待扩展名
我就说没什么关联!
首先把需要读取的文本文件放在cpp和vs工程文件下(proj),我也不知道为什么不是sln文件或者exe文件下,我觉得应该得是exe文件啊......
然后用infile读取文件的时候,要把扩展名也带上,如text.txt,输入text是没有用的。
血的教训。
3.永远初始化
初始化永远有利无弊。为什么这么说?
如果你程序运行中不输入,那么就一定要初始化对吧;如果你要输入,那么输入前的初始化对你也不会有什么坏处对吧。
再者,特别是数组,如果你不初始化,数组是不会帮你自动填充的。整形数组不帮你填充0,字符数组不帮你填充‘\0‘。这就导致你无法得知输入或操作后新的数组的长度,这是致命的,因为会乱码。养成初始化的好习惯吧,对你说,也对我自己说。
原文:https://www.cnblogs.com/luoyang0515/p/10089556.html