level 1
二船长
楼主
我学C语言半年了,对于常用的循环,数组,指针都有所了解,也能写出一些最初级的程序。
但是还想了解一些更深点的东西。
比如说int a;
a=1;
那么我们都知道这是定义一个变量a,然后给a赋值1
但是我想了解这条语句在内存中产生的实际操作是什么?
int a的作用是否只是在内存中开辟出一块4字节大小的空间,空间开辟完之后其实这块空间和int就没有关系了;
a=1是否是编译器自动判断1为整型(因为1后面没带小数点),然后化为二进制0001,然后装入之前开辟出的a变量的空间中。
还有printf("%d",8.3);这条语句我的计算结果是-1717986919,但是实际运行的结果却是-1717986918?
这些东西其实对于我现在没有用,但是真的忍不住想要去了解,若是我想学习这方面的知识,应该看什么书,口碑极好C primer plus和c programming language中似乎都很少涉猎这方面
真的诚心求解,身边很少有人能解答,感激不尽
2018年02月24日 09点02分
1
但是还想了解一些更深点的东西。
比如说int a;
a=1;
那么我们都知道这是定义一个变量a,然后给a赋值1
但是我想了解这条语句在内存中产生的实际操作是什么?
int a的作用是否只是在内存中开辟出一块4字节大小的空间,空间开辟完之后其实这块空间和int就没有关系了;
a=1是否是编译器自动判断1为整型(因为1后面没带小数点),然后化为二进制0001,然后装入之前开辟出的a变量的空间中。
还有printf("%d",8.3);这条语句我的计算结果是-1717986919,但是实际运行的结果却是-1717986918?
这些东西其实对于我现在没有用,但是真的忍不住想要去了解,若是我想学习这方面的知识,应该看什么书,口碑极好C primer plus和c programming language中似乎都很少涉猎这方面
真的诚心求解,身边很少有人能解答,感激不尽