菜鸟的总结 [陆续更新]
这几天都是师兄们发的高手帖看来要消化掉不知又要看多少书才行了
前几天做课程设计时,版上还有几个大一的上来问问题
这时候全不见人了……
1,编程语言与编程工具的区分
有C语言C++语言但没有“VC语言”“TC语言”后两个是对语言进行翻译的工具
知道这个概念,就应该明白TCVC所带来的函数,类,不是C语言里的语法,所以去研究下他们是怎么写的对个人编程是很有帮助 的 (如STL《STL源码剖析》 )
(这个概念,有一次在某社团招干时,有个师兄明显没分清……汗)
7.17
2,参数的传值与传址
我的理解是,参数只有传傎形式
因为,地址只是一个数,(好像用FAR时是长整型,一般是INT型)
[ 本帖最后由 iptton 于 2006-7-22 11:10 编辑 ] 我是这样理解的,反正不管怎么样,传进去的参数的值是不会变的
我们用 ”&变量名“ 或者是直接指针变量 的时候,
在函数里面改变的只是这个变量的值,或者是指针指向的变量的值
但是传进去的是这个变量的地址,而这个地址的值是不会变的
比如ptr指向的地址是0x12345678,fun(ptr)调用的话的改变的只是这个地址0x12345678的这个地址的变量的值,而不是ptr这个变量的值。。。。 wait for more 原帖由 hjack 于 2006/7/21 21:37 发表
wait for more
me2 这学期学了数字逻辑,
结合前几天看的东西
对计算机原理有点兴趣,不过不想去找书
(如数字逻辑,书上教的,真正有用的不仔细说)
自己猜测下……
自动机:
所有的计算都可以转换成01运算,
再抽象点就是在CPU里的指令的某个特定集合按一定的顺序进入自动机
函数参数 :
函数是包括某个特定集合按一定的顺序进入自动机的操作的内存地址
参数就是自动机里的输入,可以改变自动机的输出顺序
开始乱了…… 正式学计算机原理时再来整理,修正。。
http://wuyinggu.blog.sohu.com/7850865.html
一个程序能够运行是因为计算机的IP(指令计数器)指向了程序的第一条指令.当运行一个
程序时,系统会在内存中找到一个足够大的空间将程序的指令代码加载进去,并把IP指向第一
条指令,在这个过程中同时会为我们在程序中声请的变量,数组分配内存空间,就是所谓的栈
内存,这个过程中,指令并没用执行,故数组的大小,变量的类型必须是预先知道的,系统才可
以确定分配多少内存给他们,当在执行指令所分配的内存,就不是代码栈中分配的(这个栈
是系统用来放指令让计算机执行的,而我们只是将其中一部分划出来存放数据).因为栈的特
性,当程序执行完毕后,所有数据都将销毁.所分配的内存都被系统收回.
函数参数的传递, 当一个函数接受外来的参数时,就将参数压入栈中,(其实是将参数复
制到栈中),所以另外一种意义上说,所有参数的传递都是按值传递的,栈中数据的改变,不可
能影响外面对应的数据;如果传入的是指针,因为指向的是同一个地方,所以间接引用就会改
变外面的数据,但并不能改变指针本身.当函数调用完毕的时候,IP将指向调用函数的下条指
令,运行这个函数的栈就不存在了,所有拷贝数据,以及在栈中声请的数据将消失.调用函数接
受它的返回值.一个函数调用其他函数时只是将IP指向这个函数的第一个代码指令,调用完
毕再指回原来的指令下一条指令.这期间IP是随同参数一起入栈的.
页:
[1]