易截截图软件、单文件、免安装、纯绿色、仅160KB

C++与C的区别 北海

1)  函数声明
l         C如果不写返回值,默认是int,而C++中不能不写返回值(可用void表示无返回值)。
如Func1();
l         int Func1()在C中表示可带任意参数的函数,这是C的漏洞,使得它避开了参数类型检查;而C++中表示不带参数的函数。
2)  头文件的区别
l         C++的头文件去掉了C中的.h,以c前缀开始。比如,<stdio.h> <stdlib.h>变为<cstdio> <cstdlib>
l         C带.h的是非模板化的头文件,而C++是模板化的头文件。
.h文件是不含命名空间的,所以以前的<iostream.h>是不需要using的。
当然也可以用老的C头文件,但是,在同一个程序里不能混着用,虽然编译可以通过,但是可能会出现问题。
3)  register变量
在C语言中,是不能对register变量取地址的,因为它没有虚地址,在寄存器里。而C++中,它是可以取址的,这时,C++编译器会忽略register,不会把它放到寄存器里。
 
4)  const变量
C中,const是只读的变量,不是常量;C++中它是常量。区别用例子描述如下:
const int MAX = 10;
char buffer[MAX]; //C中它是不合法的,可以用enum或define替代;
                         //C++中它是合法的。
本质:C中const变量分配在全局静态区;C++中则在常量区,编译过程中值就定了。
5)   typedef
在C中,
struct A
{
};
A a; //这是错误的,在C++中是合法的。
struct A a; //这是正确的
用了typedef后,C中A a;也是合法的了。
 
6)  struct/union/class
l         对于struct/union数据成员与函数成员的访问性来说,其默认是public;
l         class则是private。
l         union联合体不能作为基类继承。
union A
{
};
class B: public A //编译出错
{
};
l         匿名union
union
{
int a;
float b;
};
 
在程序里可以直接访问


相关文档:

用c实现背包问题(贪心)

好久以前做的一个程序,贪心策略实现背包问题,c实现。
总结在这里,以备以后和别人查找。
//背包问题
#include "stdio.h"
#define MAX 10
void main()
{
 int w[MAX]={0,10,130,15,60,25};      //存放质量
 int v[MAX]={0,30,5,10,20,25};   //存放价值
 flo ......

VC++的ADO连接Access步骤

1:在StaAfx.h 中添加如下代码 #import "C:\\Program Files\\Common Files \\System\\ado\\msado15.dll" no_namespace rename("EOF","adoEOF")rename("BOF","adoBOF")
2:在BOOL CXXXApp::InitInstance()中初始化COM环境
   ::CoInitialize(NULL);
   释放COM环境
   ::CoUninitialize(); ......

C preprocessor

http://en.wikipedia.org/wiki/C_preprocessor
C preprocessor
from Wikipedia, the free encyclopedia
Jump to:navigation, search
The C preprocessor (cpp) is the preprocessor for the C programming language. In many C implementations, it is a separate program invoked by the compiler as the first part ......

C rule

例) 危険なコーディング
1                char cStr[256];
2                ZeroMemory(cStr, sizeof(cStr));
3      &nb ......

oracle中pro*c的学习


oracle中pro*c的学习
 一 Pro*C 程序概述:
1.什么是Pro*C程序
在ORACLE数据库管理和系统中, 有三种访问数据库的方法;
(1) 用SQL*Plus, 它有SQL命令以交互的应用程序访问数据库;
(2) 用第四代语言应用开发工具开发的应用程序访问数据库,这些工具有SQL*froms,QL*Reportwriter,SQL*Menu等;
(3) 利用在 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号