易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : c++

c,c++内存运行时深入研究

C/C++内存与运行时深入研究 [作者Jean.Love] 
-----------------------------------------------------------------------------------
(一)整数符号的陷阱 
(二)浮点数的本质 
(三)堆栈的内存管理结构 
(四)符号解析 
(五)对齐和总线错误 
(六)函数指针 
(七)虚函数的实现机理 
(八)引用的实现机理 
(九)虚拟继承对象的内存结构 
(十)混合编程时的初始化顺序 
(十一)数组和指针的异同 
(十二)const限定的传递性 
(十三)数据类型的限定性检查 
(十四)使用STL时的类型限制 
(十五)迭代器自身的类型 
(十六)运行时的类型信息 
(十七)new/delete重载 
(十八)如何拷贝一个文件 
(一)整数符号的陷阱 
        x
#include
int main(void){ 
int x=1; 
unsigned int y=2; 
int b=x
int b2=(x-y<0); 
printf("%d,%d\n",b,b2); 
return 0; 

它输出什么呢? 
1,0 
    令人震惊,不是吗,x
(1)x
(2 ......

c,c++内存运行时深入研究

C/C++内存与运行时深入研究 [作者Jean.Love] 
-----------------------------------------------------------------------------------
(一)整数符号的陷阱 
(二)浮点数的本质 
(三)堆栈的内存管理结构 
(四)符号解析 
(五)对齐和总线错误 
(六)函数指针 
(七)虚函数的实现机理 
(八)引用的实现机理 
(九)虚拟继承对象的内存结构 
(十)混合编程时的初始化顺序 
(十一)数组和指针的异同 
(十二)const限定的传递性 
(十三)数据类型的限定性检查 
(十四)使用STL时的类型限制 
(十五)迭代器自身的类型 
(十六)运行时的类型信息 
(十七)new/delete重载 
(十八)如何拷贝一个文件 
(一)整数符号的陷阱 
        x
#include
int main(void){ 
int x=1; 
unsigned int y=2; 
int b=x
int b2=(x-y<0); 
printf("%d,%d\n",b,b2); 
return 0; 

它输出什么呢? 
1,0 
    令人震惊,不是吗,x
(1)x
(2 ......

C/C++基础问题整理

这篇文章中记录本人对一些C/C++基础概念的理解,主要包括以下几个方面内容:
1、类型转换
1、类型转换
在C和C++的一个表达式中往往会包含几种不同的数据类型,要让这些数据类型之间可以进行运算,必须让他们之中的一些或全部进行类型转换,这种转换有两种形式,一种是编译器自动进行的,叫隐式类型转换,另一种是编程中强制执行的,叫强制类型转换。
1.1、隐式类型转换
1.1.1、例子
首先由两个例子来引出问题,分析下面两个例子的输出:
例一:
#include <stdio.h>
int main(int argc, char *argv[])
{
signed int a = -8;
unsigned int b = 4;
printf("%d\n", (a+b)/2);

return 0;
}
例二:
#include <stdio.h>
int main(int argc, char *argv[])
{
signed short a = -8;
unsigned short b = 4;
printf("%d\n", (a+b)/2);

return 0;
}
1.1.2、何时发生转换
1、在混合类型的表达式中,操作数要转换成相同类型。
2、用作条件的表达式需要转换成bool型。如if()、while()等。
3、初始化或赋值操作。
1.1.3、各种转换方式
1、算术转换:
算术转换最简单的是整形提升,对比int小的整数类型的操作数,如char, ......

C/C++基础问题整理

这篇文章中记录本人对一些C/C++基础概念的理解,主要包括以下几个方面内容:
1、类型转换
1、类型转换
在C和C++的一个表达式中往往会包含几种不同的数据类型,要让这些数据类型之间可以进行运算,必须让他们之中的一些或全部进行类型转换,这种转换有两种形式,一种是编译器自动进行的,叫隐式类型转换,另一种是编程中强制执行的,叫强制类型转换。
1.1、隐式类型转换
1.1.1、例子
首先由两个例子来引出问题,分析下面两个例子的输出:
例一:
#include <stdio.h>
int main(int argc, char *argv[])
{
signed int a = -8;
unsigned int b = 4;
printf("%d\n", (a+b)/2);

return 0;
}
例二:
#include <stdio.h>
int main(int argc, char *argv[])
{
signed short a = -8;
unsigned short b = 4;
printf("%d\n", (a+b)/2);

return 0;
}
1.1.2、何时发生转换
1、在混合类型的表达式中,操作数要转换成相同类型。
2、用作条件的表达式需要转换成bool型。如if()、while()等。
3、初始化或赋值操作。
1.1.3、各种转换方式
1、算术转换:
算术转换最简单的是整形提升,对比int小的整数类型的操作数,如char, ......

高质量C++/C编程指南

高质量C++/C编程指南
文件状态
[  ] 草稿文件
[√] 正式文件
[  ] 更改正式文件 文件标识: 
 当前版本: 1.0
 作    者: 林锐 博士
 完成日期: 2001年7月24日
版 本 历 史
版本/状态 作者 参与者 起止日期 备注
V 0.9
草稿文件 林锐
  2001-7-1至
2001-7-18 林锐起草
V 1.0
正式文件 林锐
  2001-7-18至
2001-7-24 朱洪海审查V 0.9,
林锐修正草稿中的错误
    
    
 目 录
前 言 6
第1章 文件结构 11
1.1 版权和版本的声明 11
1.2 头文件的结构 12
1.3 定义文件的结构 13
1.4 头文件的作用 13
1.5 目录结构 14
第2章 程序的版式 15
2.1 空行 15
2.2 代码行 16
2.3 代码行内的空格 17
2.4 对齐 18
2.5 长行拆分 19
2.6 修饰符的位置 19
2.7 注释 20
2.8 类的版式 21
第3章 命名规则 22
3.1 共性规则 22
3.2 简单的WINDOWS应用程序命名规则&nbs ......

高质量C++/C编程指南

高质量C++/C编程指南
文件状态
[  ] 草稿文件
[√] 正式文件
[  ] 更改正式文件 文件标识: 
 当前版本: 1.0
 作    者: 林锐 博士
 完成日期: 2001年7月24日
版 本 历 史
版本/状态 作者 参与者 起止日期 备注
V 0.9
草稿文件 林锐
  2001-7-1至
2001-7-18 林锐起草
V 1.0
正式文件 林锐
  2001-7-18至
2001-7-24 朱洪海审查V 0.9,
林锐修正草稿中的错误
    
    
 目 录
前 言 6
第1章 文件结构 11
1.1 版权和版本的声明 11
1.2 头文件的结构 12
1.3 定义文件的结构 13
1.4 头文件的作用 13
1.5 目录结构 14
第2章 程序的版式 15
2.1 空行 15
2.2 代码行 16
2.3 代码行内的空格 17
2.4 对齐 18
2.5 长行拆分 19
2.6 修饰符的位置 19
2.7 注释 20
2.8 类的版式 21
第3章 命名规则 22
3.1 共性规则 22
3.2 简单的WINDOWS应用程序命名规则&nbs ......

C++连接Oracle

C++连接Oracle
 
        在Visual C++下开发Oracle库接口主要有两种方法。一种方法是利用Visual C++提供的多种数据库访问技术,如开放数据库连接ODBC、数据存取对象DAO、对象连接和嵌入数据库OLE DB和ActiveX数据对象ADO等。另一种方法是在Visual C++中嵌入SQL语句,这就是所指的Pro*C/C++(本文简称PROC)。前一种方法由于有MFC 强大的类库支持,熟悉VC编程时则实现方便,且可移植性强;但是,与PROC 相比,应用程序需要经过两层才能和数据库通信接口建立联系,编程相对复杂,执行效率相对较低。PROC支持嵌入式PL/SQL 块等直接调用Oracle 库,将过程化语言和非过程化语言相结合,形成一种更强的开发工具,可开发出满足各种复杂要求的优化应用程序,执行效率高。适合熟悉Oracle技术的人员应用。但是用PROC 开发出的应用程序无法向异构数据库平台移植。
  本文详细描述实际利用PROC在Visual C++环境下开发Oracle数据库接口程序的方法和具体操作步骤,并给出了编程实例。叙述以Visual C++ 6.0版和Oracle8i版为例,其他版本可根据实际情况变更。
  几个特殊文件
  PROC在VC下开发Oracle库接口时,需要用到几个特殊文件。
......

C/C++笔试、面试题目汇总

1.求下面函数的返回值(微软)
int func(x)
{
int countx = 0;
while(x)
{
countx ++;
x = x&(x-1);
}
return countx;
}
假定x = 9999。 答案:8
思路:将x转化为2进制,看含有的1的个数。
2. 什么是“引用”?申明和使用“引用”要注意哪些问题?
答:引用就是某个目标变量的“别名”(alias),对应用的操作与对变量直接操作效果完全相同。申明一个引用的时候,切记要对其进行初始化。引用声明完毕后,相当于目标变量名有两个名称,即该目标原名称和引用名,不能再把该引用名作为其他变量名的别名。声明一个引用,不是新定义了一个变量,它只表示该引用名是目标变量名的一个别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单元。不能建立数组的引用。
3. 将“引用”作为函数参数有哪些特点?
(1)传递引用给函数与传递指针的效果是一样的。这时,被调函数的形参就成为原来主调函数中的实参变量或对象的一个别名来使用,所以在被调函数中对形参变量的操作就是对其相应的目标对象(在主调函数中)的操作。
(2)使用引用传递函数的参数,在内存中并没有产生实参的副本,它是直 ......

C/C++笔试、面试题目汇总

1.求下面函数的返回值(微软)
int func(x)
{
int countx = 0;
while(x)
{
countx ++;
x = x&(x-1);
}
return countx;
}
假定x = 9999。 答案:8
思路:将x转化为2进制,看含有的1的个数。
2. 什么是“引用”?申明和使用“引用”要注意哪些问题?
答:引用就是某个目标变量的“别名”(alias),对应用的操作与对变量直接操作效果完全相同。申明一个引用的时候,切记要对其进行初始化。引用声明完毕后,相当于目标变量名有两个名称,即该目标原名称和引用名,不能再把该引用名作为其他变量名的别名。声明一个引用,不是新定义了一个变量,它只表示该引用名是目标变量名的一个别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单元。不能建立数组的引用。
3. 将“引用”作为函数参数有哪些特点?
(1)传递引用给函数与传递指针的效果是一样的。这时,被调函数的形参就成为原来主调函数中的实参变量或对象的一个别名来使用,所以在被调函数中对形参变量的操作就是对其相应的目标对象(在主调函数中)的操作。
(2)使用引用传递函数的参数,在内存中并没有产生实参的副本,它是直 ......

C/C++ DIR遍历函数

#include <list.h>
#include <dirent.h>
#include <iostream.h>
#include <sys/stat.h>
#include <sys/types.h>
/*****************************************************************
*函数功能: 目_录_遍_历.
*返回值:   成功返回0,失败返回非0.
*参数   path : 开始遍历的路径(最好不要使用相对路径)
*       l    : 保存找到路径的std:list对象
*       field: 要查找的目录名称.
*              如: list("/home/wyq/",list,"tmp");
*              则可以找到 /home/wyq/*/tmp/
*              如: list("/home/wyq/",list,"tmp/template");
*              则可以找到 /home/wyq/*/tmp/template
*
************************************* ......

C/C++ DIR遍历函数

#include <list.h>
#include <dirent.h>
#include <iostream.h>
#include <sys/stat.h>
#include <sys/types.h>
/*****************************************************************
*函数功能: 目_录_遍_历.
*返回值:   成功返回0,失败返回非0.
*参数   path : 开始遍历的路径(最好不要使用相对路径)
*       l    : 保存找到路径的std:list对象
*       field: 要查找的目录名称.
*              如: list("/home/wyq/",list,"tmp");
*              则可以找到 /home/wyq/*/tmp/
*              如: list("/home/wyq/",list,"tmp/template");
*              则可以找到 /home/wyq/*/tmp/template
*
************************************* ......
总记录数:969; 总页数:162; 每页6 条; 首页 上一页 [63] [64] [65] [66] 67 [68] [69] [70] [71] [72]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号