Float和Double的区别

float为单精度实数,double为双精度实数 在一般计算机中,为float类型的变量分配4个字节的存储单元,为double类型变量分配8个字节的存储单元 在VC中: float数值范围约在 -10e38~10e38,并提供7位有效数字位,绝对值小于10e38的数被处理成零值 double数值范围约在-10e308~10e308,并提供15~16位有效数字,绝对值小于10e308的数被处理成零值

作者: Mr_Yao 发布时间: 10-19

深入了解变量!!!

我相信大家都有过这样的经历,在面试过程中,考官通常会给你一道题目,然后问你某个变 量存储在什么地方,在内存中是如何存储的等等一系列问题。不仅仅是在面试中,学校里面的考试也会碰到同样的问题。 如果你还不知道答案,请接着往下看。接下 来,我们将在Linux操作系统上,以GCC编译器为例来讲解变量的存储。 在计算机系统中,目标文件通常有三种形式: 1. 可重定位的目...

作者: aaron_xueli 发布时间: 10-19

Jollen 的 Android 教學,#19: 什麼是App Widget?

App Widget是Cupcake(Android 1.5)所提供的一個功能,這是一個很實用而且能有很大創意想像空間的功能。什麼是App Widget呢?請看底下的操作示範。 在Android桌面長壓約3秒,出現一個選單,如圖1。 圖1:新增項目至桌面 2. 選擇「Widget」,加入”HelloWidget” 圖2:加入自行設計的Widget 桌面上出現了一個「Widget」 圖3:在Android桌面上出現我們自已設計的App Widget 圖4:...

作者: landuochong 发布时间: 10-19

宏和内联函数的区别

宏和内联函数的区别 先说宏和函数的区别: 1. 宏做的是简单的字符串替换(注意是字符串的替换,不是其他类型参数的替换),而函数的参数的传递,参数是有数据类型的,可以是各种各样的类型. 2. 宏的参数替换是不经计算而直接处理的,而函数调用是将实参的值传递给形参,既然说是值,自然是计算得来的. 3. 宏在编译之前进行,即先用宏体替换宏名,然后再编译的,而函数显然是编译之后,在...

作者: haox2653 发布时间: 10-19

二进制位运算

位移进制运算 带符号右移 题:-15 >> 2 = -4 15原码: 00000000 00000000 00000000 00001111 //32位,二进制 反码: 11111111 11111111 11111111 11110000 //0变1,1变0 补码: 11111111 11111111 11111111 11110001 //最后位加1,-15二进制 右移2位: 11111111 11111111 11111111 11111100 //右边丢弃2位,前面30位保留,左边补1 取反: 00000000 00000000 00000000 00000011 //...

作者: benxiong 发布时间: 10-19

哈希表

哈希表又名散列表,其主要目的是用于解决数据的快速定位问题。考虑如下一个场景。 一列键值对数据,存储在一个table中,如何通过数据的关键字快速查找相应值呢?不要告诉我一个个拿出来比较key啊,呵呵。 大家都知道,在所有的线性数据结构中,数组的定位速度最快,因为它可通过数组下标直接定位到相应的数组空间,就不需要一个个查找。而哈希表就是利用数组这个能够快速定...

作者: pluto1113 发布时间: 10-19

java实现简单web服务器

该程序简单实现web服务器,目前仅支持html和gif/jpeg格式,下面是代码: import java.io.* ; import java.net.* ; import java.util.* ; public class SimpleWebServer { public static void main(String argv[]) throws Exception { //Get the port as an argument. // Also, you could hard code the port to point to 6789 or any other port int port = (new Integer(ar...

作者: reesun 发布时间: 10-19

c++ const成员函数

一些成员函数改变对象,一些成员函数不改变对象。 例如: int Point::GetY() { return yVal; } 这个函数被调用时,不改变Point对象,而下面的函数改变Point对象: void Point:: SetPt (int x, int y) { xVal=x; yVal=y; } 为了使成员函数的意义更加清楚,我们可在不改变对象的成员函数的函数原型中加上const说明: class Point { public: int GetX() const; int GetY() cons...

作者: typhoon85 发布时间: 10-18

Linux下C程序命令行参数处理函数getopt

Linux下很多程序甚至那些具有图形用户界面(graphical user interface,GUI)的程序,都能接受和处理命令行选项。对于某些程序,这是与用户进行交互的主要手段。具有可靠的复杂命令行参数处理机制,会使得您的应用程序更好、更有用。getopt() 是一个专门设计来减轻命令行处理负担的库函数。 1、命令行参数 命令行程序设计的首要任务是解析命令行参数,GUI派的程序员很少关心...

作者: WeiRukai2010 发布时间: 10-18

关于栈中最小元素O(1)

1.设计含min函数的栈,要求min、push和pop的时间复杂度都是o(1)。 算法思想:需要设计一个辅助栈,用来存储当前栈中元素的最小值。网上有人说存储当前栈中元素的最小值的所在位置,虽然能节省空间,这其实是不对的,因为我在调用Min函数的时候,只能得到位置,还要对存储元素的栈不断的pop,才能得到最小值——时间复杂度o(1)。 所以,还是在辅助栈中存储元素吧。 此外,还要...

作者: typhoon85 发布时间: 10-17