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

长期收集 C/C++ FAQ

写在前面:
  论坛里总有那么一些问题是长盛不衰的,今天这个问,明天那个问,到历史帖子里一搜可以抓出来一大把。有时候这都令我怀疑是不是我们的教育体制存在问题……
  于是我开了这篇文章,搜集我见到的长生不老之帖,希望可以起到参考价值。
  这里使用的编译环境为 gcc/g++ 4.3.3 for ubuntu 9.04
数组名和指针的问题
  这绝对是教材问题!现在国内有太多教材灌输“数组名相当于指针”的概念了!于是纷纷有人把数组名和指针等同起来,认为数组名其实就是一个指针。久而久之,许多新手已经不知道还有一种数据类型叫做“数组”了。
  对于这个问题首先应该从概念上澄清,坚定不移地把数组和指针这两种类型划清界线,认识到它们虽然有千丝万缕的联系,但其实是两种不同的数据类型。就如下面所看到的:
#include <iostream>
#include <typeinfo>
using namespace std;
#define gettype(id) (cout<<typeid(id).name()<<endl)
int a;
char arrChar[10];
char str1[] = "string";
char str2[] = "string?";
char *p1 = str1;
char *p2 = str2;
int main()
{
gettype(a);
gettype(arrChar);
gettype(str1);
gettype(str2);
gettype(p1);
gettype(p2);
return 0;
}

输出为:
A10_c
A7_c
A8_c
Pc
Pc
  可见,arrChar、str1、str2 的类型分别为 char [10]、char [7]、char [8],即使它们都是数组,由于大小不同,也被看作是三种不同的类型;而 p1、p2 的类型则相同,为 char*。
  那么,传说的“数组名相当于指针”又是怎么一回事呢?且看 C99 标准中有关叙述:
6.2.5 Types
......
    Array types are characterized by their element type and by the number of elements in the array.
......


相关文档:

如何用C 编写PHP扩展

PHP取得成功的一个主要原因之一是她拥有大量的可用扩展。web开发者无论有何种需求,这种需求最有可能在PHP发行包里找到。PHP发行包包括支持各种数据库,图形文件格式,压缩,XML技术扩展在内的许多扩展。
  扩展API的引入使PHP取得了巨大的进展,扩展API机制使PHP开发社区很容易的开发出几十种扩展。。扩展主要的思想是 ......

oracle中pro*c的学习


oracle中pro*c的学习
 一 Pro*C 程序概述:
1.什么是Pro*C程序
在ORACLE数据库管理和系统中, 有三种访问数据库的方法;
(1) 用SQL*Plus, 它有SQL命令以交互的应用程序访问数据库;
(2) 用第四代语言应用开发工具开发的应用程序访问数据库,这些工具有SQL*froms,QL*Reportwriter,SQL*Menu等;
(3) 利用在 ......

C遗留的结构跳转 北海

1)          goto
goto 只能在一个函数内跳转。建议少用,使得程序维护起来容易出错;但是,在有多个循环情况下跳转,有时用goto可以使得问题变得简单。
class A
{
public:
A(){}
~A(){}
};
           &nbs ......

C/C++头文件一览


C/C++
头文件一览

//////////////////////////////////////////////////////////////////////////
C
头文件
(C89,C95)
(C++98,C++03也包含)
include <assert.h>    //诊断库
include <ctype.h>     //字符处理函数库
include <errno.h>     //错误定义
include <float.h& ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号