易截截图软件、单文件、免安装、纯绿色、仅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/S与B/S架构

C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。早期的软件系统多以此作为首选设计标准。
B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript、JavaScript…)和ActiveX技术,通过通用浏览器实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。
C/S 与 B/S 的区别:
1.硬件环境不同:
C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务。
B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例与电话上网, 租用设备. 信息自己管理. 有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行。
2.对安全要求不同
C/S 一般面向相对固定的用户群 ......

不可小看的extern "C"

     项目中要用到一个模块。看了下该模块的用法,就依葫芦画瓢的搬到自己的代码里面来了。不过在编译的时候碰到了麻烦, 在程序链接的时候出错:“undefined reference to***",应该是因为没有包含相应的库文件吧。
      于是比较了make file文件的写法,试图在我这边的makefile 中加上相应的库。但是折腾了半天,未解决。在网上搜了半天,没有点头绪,忽然一个帖子中的一句话提醒了我,“或者就是c++   和c对同名的函数编译出的函数名字是不一样的。所以呢要extern   c”。赶紧看我们的代码!果然,我引用的模块是用c写的,但是它的相应函数没用放在extern C{}内;而我这部分用的是C++。。。
     于是在相应部位加上 #ifdef __cplusplus
                                      extern "C" {
             ......

doxygen+VIM文档实用指南for C/C

摘要:
文档撰写是一项十分繁琐而且费力的工作,相信已经有很多人对此深感头痛。文档生成工具的出现最大限度地帮助程序员解决了这个问题,这些工具通常可以从程序源代码自动生成文档,大大方便了文档工作。这篇小东西主要介绍了如何用VIM和doxygen来快速生成注释,并用最少的额外劳动来完成专业水准的程序文档的过程。仅供参考,如有雷同,纯属巧合。 
关键字:
       doxygen vim doxygentoolkit chm dot lex CLanuageScanner 
补充:
本文一开始是为dylan同学准备的,后来有所扩展。本文不涉及doxygen注释的具体做法,因为可以在网上得到更多关于这方面的范例和资料。
 什么是doxygen
什么是VIM
为什么要使用doxygen+VIM
需要做什么?
1)    准备工作
2)    添加注释
3)    配置并运行doxygen
4)    编译成chm
5)    一些配置选项
Dot图形扩展
doxygen方便扩展吗?
小结
 
什么是doxygen
doxygen是一个十分好用的自由软件,是一种文档生成器,其工作机制是利用注释中的有效信息来自动生成文档。目前doxygen的最新版是 ......

关于C/C++中指针做形参的一点小分析(转)

 
2009-07-26 15:50
今天寝室的山东兄弟在练二级的上机,其中一个题目大概是这样:在一个函数中,有一个指针形参,记为*p,然后在函数内部定义了临时变量a,a和*p是同种类型。经过一系列计算 ,a得到了一个值,这个值最后是需要记录在指针*p里面的,应该怎么保存呢?我当时随便就说,p=&a。结果发生错误了,没有得到预期结果。正确答案是*p=a。
下面来分析下原因。
学过C的人都知道到,函数的实参与形参的之间是值传递,单向传递。在谭浩强那本C语言教材中就有这样一个经典的例子:
int a=3,b=4;
void exchange(int x,int y)
...{  
          int temp;
           temp=a;a=b;b=temp;   //试图交换a,b
}
exchange(a,b);
cout<<a<<" "<<b<<endl;
输出的来的仍然是3,4.
要交换a,b,只需改变函数exchange,传递a,b的地址,如下:
void exchange(int *x,int *y)
{
         int temp;
          ......

关于C/C++中指针做形参的一点小分析(转)

 
2009-07-26 15:50
今天寝室的山东兄弟在练二级的上机,其中一个题目大概是这样:在一个函数中,有一个指针形参,记为*p,然后在函数内部定义了临时变量a,a和*p是同种类型。经过一系列计算 ,a得到了一个值,这个值最后是需要记录在指针*p里面的,应该怎么保存呢?我当时随便就说,p=&a。结果发生错误了,没有得到预期结果。正确答案是*p=a。
下面来分析下原因。
学过C的人都知道到,函数的实参与形参的之间是值传递,单向传递。在谭浩强那本C语言教材中就有这样一个经典的例子:
int a=3,b=4;
void exchange(int x,int y)
...{  
          int temp;
           temp=a;a=b;b=temp;   //试图交换a,b
}
exchange(a,b);
cout<<a<<" "<<b<<endl;
输出的来的仍然是3,4.
要交换a,b,只需改变函数exchange,传递a,b的地址,如下:
void exchange(int *x,int *y)
{
         int temp;
          ......

C宏的用法

前几天参加某公司的笔试,有一道题是用纯C实现一个泛型函数。郁闷了好久用C++模板实现了。
宏有如下的特点:
1.与const相比,宏是在预编译的时候完成的
2.define 只做简单的替换,不做类型安全检查
3.使用不当会引起很多问题
宏的用法:
1.简单的宏定义
#define  MAX 1024
2.宏定义功能块
#define MAX(a,b) (a)>(b)?(a):(b)      //比较大小的宏
3定义函数实现泛型
#define SORT(Type) void Buble_sort(Type a[],int len) { \
bool is_swap=true;\
for(int i=0;i<len&&is_swap;++i)\
{\
is_swap = false;\
for(int j=0;j<len-i;++j)\
{\
if(a[j]>a[j+1])\
{\
Type t;\
t=a[j];\
a[j+1] = a[j];\
a[j]=t;\
is_swap = true;\
}\
}\
}\
}
SORT(int);
SORT(double);
SORT(float);
SORT(unsigned int);
4.定义类
  #define   _DECL_class(name,   element   )\  
  class   df_##nm\  
  {\  
  protected:\  
  element         *pData;\ &nbs ......

linux c问题集锦

1.为什么我写的Makefile,在编辑了源代码文件后,使用make,make却提示目标文件已经为最新的了!
2.OpenGL,在窗口中画点时,怎样使用glVertexi()函数?因为传递的参数如果是大于1的int型,则不行,而必须传递[-0.1~0.1]之间的float,而且使用函数
gVertex2f().
3.OpenGL,使用菜单时,怎样解决点击菜单后不要捕捉GLUT_UP事件,应用背景是这样的:设置了菜单来画线,当鼠标左键按下时捕获第一个点,当鼠标左键松开时捕获第二个点,然后画线,但是当使用菜单时:点击菜单以后松开时,回调函数就会画出一条线! ......

linux c问题集锦

1.为什么我写的Makefile,在编辑了源代码文件后,使用make,make却提示目标文件已经为最新的了!
2.OpenGL,在窗口中画点时,怎样使用glVertexi()函数?因为传递的参数如果是大于1的int型,则不行,而必须传递[-0.1~0.1]之间的float,而且使用函数
gVertex2f().
3.OpenGL,使用菜单时,怎样解决点击菜单后不要捕捉GLUT_UP事件,应用背景是这样的:设置了菜单来画线,当鼠标左键按下时捕获第一个点,当鼠标左键松开时捕获第二个点,然后画线,但是当使用菜单时:点击菜单以后松开时,回调函数就会画出一条线! ......
总记录数:2015; 总页数:336; 每页6 条; 首页 上一页 [247] [248] [249] [250] 251 [252] [253] [254] [255] [256]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号