- 浏览: 17498 次
- 性别:
- 来自: 上海
最新评论
文章列表
#include <iostream>
using namespace std;
int main()
{
float a = 2.31111111111;
cout<<(float)a<<endl;
float b = 22.221111111111;
cout<<b<<endl;
float c = 0.22111111111;
cout<<c<<endl;
return 1;
}
2.31111
22.2211
0.221111
float与double的范围和精度
- 博客分类:
- c、c++
1. 范围
float和double的范围是由指数的位数来决定的。(因为表示的时候都是1.x * 2^Y的形式,所以忽略了1.x的效果,直接取指数表示浮点数的范围)
float的指数位有8位,而double的指数位有11位,分布如下:
float:
1bit(符号位) 8bits(指数位) 23bits(尾数位)
double:
1bit(符号位) 11bits(指数位) 52bits(尾数位)
于是,float的指数范围为-127~+128,而double的指数范围为-1023~+1024,并且指数位是按补码的形式来划分的。
其中负指数决定了浮点数所能表达的绝对值最小的非零数;而正指数决 ...
这篇文字是引用网上资源:
session和cookie是网站浏览中较为常见的两个概念,也是比较难以辨析的两个概念,但它们在点击流及基于用户浏览行为的网站分析中却相当关键。基于网上一些文章和资料的参阅,及作者个人的应用体 ...
反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。 ( ...
在C语言中:
在C中定义一个结构体类型要用typedef:
typedef struct Student
{
int a;
}Stu;
于是在声明变量的时候就可:Stu stu1;
如果没有typedef就必须用struct Student stu1;来声明
这里的Stu实际上就是struct Student的别名。
另外这里也可以不写Student(于是也不能struct Student stu1;了)
typedef struct
{
int a;
}Stu;
------------------------------------------------------------------ ...
今天专门看了一下虚继承的东西,以前都没怎么用过,具体如下:
父类:
class CParent
{
....
};
继承类的声明比较特别:
class CChild : virtual public CParent
{
....
}
请问,这个"virtual"是什么作用及含义?
---------------------------------------------------------------
表示虚拟继承,和普通继承是C++的两种多重继承方式。
例如CB1、CB2 继承CA ...
关于类型转换,首先说明一下C、C++中的不同:C中使用“括号”的方式进行强制类型转换;C++则是使用static_cast、dynamic_cast、reinterpret_cast、和const_cast进行强制类型转换。
接下来主要说明static_cast、dynamic_cast、和const_cast
1、static_cast这个和C里面的“括号”方式类似。
用法:static_cast < type-id > ( expression )
说明:该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。这个转型的过程是在编译期进 ...
关于类型转换,首先说明一下C、C++中的不同:C中使用“括号”的方式进行强制类型转换;C++则是使用static_cast、dynamic_cast、reinterpret_cast、和const_cast进行强制类型转换。
接下来主要说明static_cast、dynamic_cast、和const_cast
1、static_cast这个和C里面的“括号”方式类似。
用法:static_cast < type-id > ( expression )
说明:该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。这个转型的过程是在编译期进 ...
JDK安装配置
1、安装java6
sudo apt-get install sun-java6-jdk
2、选择默认 java
sudo update-alternatives --config java
3、配置环境变量:
sudo gedit /etc/environment
在其中添加如下两行:
CLASSPATH=/usr/lib/jvm/java-6-sun/lib
JAVA_HOME=/usr/lib/jvm/java-6-sun
具体的内容为:
CLASSPATH=/usr/lib/jvm/java-6-sun/lib
JAVA_HOME=/usr/lib/jvm/java-6 ...
最近碰到一个问题,想要在主文件中定义全局变量,其它文件也能够使用。通过查资料,找到了两种方法:一是在主文件的cpp中定义变量,在头文件.h中通过extern声明一下,要使用全局变量的其它cpp文件只要包含这个头文件就ok了;二是通过条件编译。
其中一是比较常用的方法,但是有一点一定要注意,就是头文件中只是声明,定义是在cpp文件中,千万不要弄反了!
下面之间看实现。。。。。。
方法一:
main.cpp:
#include <iostream>
#include "head.h"
using namespace std;
int a = 10;
int b ...
今天同学问我一个小问题,说:
int i = -20;
unsigned int j = 10;
cout<<(i+j)<<endl;
输出的结果是多少?
我想肯定不回是-10,怎么会这么简单!自己在VC里面实验了一下,果然结果不是-10,输出的是4294967286。结果我就仔细的考虑了一下,然后有写下了下面一段:
if(i>j)
cout<<"i is bigger"<<endl;
else
cout<<"j is bigger"<<endl;
结果又是 ...
首先就看一下KeepAlive出现的原因吧:
当一个客户端向服务器发送http请求时,两者之间会建立一个tcp连接,然后服务器发回响应信息同时关闭连接。如果请求的的页面中含有别的资源连接,比如图片、flsah等,就会再次创建连接。KeepAlive的作用就是在第一次创建连接时,服务器会把这个tcp连接保持一段时间(服务器端会有一个keepaliveTime的最大时间,超过时间就断开连接)。这样就不会频繁的去建立tcp连接,同一次请求中的信息传递都可以使用同一个tcp连接。
KeepAlive的工作原理:
在HTTP1.0和HTTP1.1协议中都有对KeepAlive的支持。其中HTTP1.0需 ...
转自:http://coffeelet.blog.163.com/blog/static/13515745320107249178730/
eclipse工程中.classpath文件含义:
下面是一个.classpath文件内容:
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<!-- 源码目录 -->
<classpathentry kind="src" path="src"/&g ...
说实话,第一次在网上写与计算机相关的文章。今天被这个问题搞了一天,所以想写出来给需要的人,少走弯路。
由于jmeter这个测试工具是开源的,所以就想根据自己的需求进行修改。就把源码下来,进行编译,结果一搞就是一天,郁闷的一塌糊涂,不过最终还是弄出来了,网上关于jmeter的编译文章不多,希望对大家有帮助。
首先,我使用的是jmeter2.4版本。下来了两个压缩包,jakarta-jmeter-2.4.zip、jakarta-jmeter-2.4_src.zip。第一个是直接可以使用的,只需运行bin目录里面的jmeter.bat,就可以看到jmeter的界面了。第二个包就是源文件,需要编译之 ...