C语言
little fairy
这个作者很懒,什么都没留下…
展开
-
【C语言】传指针和解引用,野指针和空指针
一个函数的改变要影响另一个函数需要两个条件:1、传指针。2、解引用。通过交换a和b数值的实例来说明其重要性:在主函数中输入a和b的值;int a = 10;int b = 20;预期输出结果为a = 20;b = 10。1、明显与预期结果不符。原因:没有传指针!2、具体操作为:也与预期结果不符。原因:没有解引用。3、与预期相符,多测试几组有代表性的数...原创 2018-07-16 15:36:40 · 4237 阅读 · 0 评论 -
【C语言】指针的初步学习
取地址符“&”。例:&a,取a的地址。地址=指针。int a=10;整型变量存放在整型值。double b=23.4;浮点变量存放浮点值。int *p=&a;整型指针(地址)变量存放整型地址值。(只能对变量取地址!)指针的大小:32位X86平台4字节,64位X64平台8字节。对于*p,其实是一个间接访问符,即为解应用。指针的基本操作:1、in...原创 2018-07-16 13:47:58 · 212 阅读 · 0 评论 -
【C语言】关于“栈”的越界问题
局部变量都保存在“栈”中。“栈”的大小为”1M“,内存由系统自动管理。“栈”中“栈底”的地址高于“栈顶”。有很多越界问题,都是因为“栈”溢出造成的。我们通过实例来说明。这个代码在VC6.0中会由于“栈”溢出而出现死循环。而在VS2012中会奔溃,这是因为VS2012中,系统在保存数据到“栈”中时,在两个数中间加了两个地雷,这就会使的”栈“溢出时会碰到地雷,从而引发崩...原创 2018-06-22 14:38:38 · 2692 阅读 · 0 评论 -
【C语言】求已知等式在几进制条件下成立
little fairy的第五篇博客。通过实例来说明问题。例1、求使15*4=112成立的进制条件。假设进制为n,则(1*n^1+5)*4 = 1*n^2+1*n^1+2;这是一个一元二次方程,我们可以得到,进制条件为 6 进制。可是,如果我们所要求的式子比这个更为复杂,那么,我们得出的将会是一个一元N次的方程,无法解出答案时,我们应该怎么办。例2、求使567*456=1502...原创 2018-06-03 13:40:20 · 1058 阅读 · 0 评论 -
【C语言】简单的调试技巧
little fairy 的第三篇博客。这次我们主要是学习在vs2012中的调试。调试的基本步骤。First:在需要调试的步骤前点击。Second:点击启动调试按钮或者F5。Third:点击逐语句按钮或F11,运用逐语句,逐过程和跳出按钮进行调试。Finally:点击停止调试按钮终止调试。然后,我们来做一个折半查找的练习。(写这个,就是写一下这个算...原创 2018-05-20 18:51:08 · 13209 阅读 · 1 评论 -
【C语言】scanf和printf的返回值。
little fairy的第二篇博客。让我们一起来看看scanf和printf的返回值吧。scanf:在VS2012中,用scanf会给出警告。(对于一个程序员,警告比错误更致命。)scanf非常容易出错,所以我们一般要求不用scanf。但如果用到scanf出错,为了解决,我们通常需要判断scanf的返回值。scanf的返回值:用scanf读取几个数,则scanf的返回...原创 2018-05-11 00:02:47 · 2261 阅读 · 4 评论 -
【C语言】浮点数的误差分析
在编程中,我们经常会用到浮点数。我们发现浮点数运算后的结果经常会有误差,也就是实际结果和理论结果不一致。例如:输出的理论结果应该是 123456789.000000。然而并不是,输出的实际结果为 123456792.000000这就是浮点数的误差。就像是钟表一样,都有一定的误差,在误差范围内,我们一般默认实际值为正确答案。在已知误差和理论值的情况下,我们可以明确实际值的...原创 2018-05-07 01:25:38 · 11655 阅读 · 0 评论