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

c与c++的区别(基础)

为了用vc写一个最简单的 socket 程序,花费了一个下午的时间,过程中出现的错误有:
'SOCKET' : illegal use of this type as an expression
syntax error : missing ';' before 'type'
syntax error : identifier 'InitWinsock'   -->       bool   InitWinsock()  
既然要做 socket 程序, #include <winsock.h> 是 必不可少的,以及 ws2_32.lib,但问题不出在这里。
该文件若是 .cpp 后缀可成功编译,然而若是 .c 就出现上述错误,可见,这便是 c与c++的区别。
首先,要保证所有的 变量声明 位于程序最前面,
int i; 也要在
int j = 5; 前面;
其次,winsock.h 中有SOCKET的宏定义, 要么大写,要么 struct socket,两者相同;
然后,在C语言中,没有bool类型,只是在宏定义中有 #define int BOOL,以及 #define TRUE 1 等。
最后,在更正所有错误后,我去除了 windows debug 等中ws2_32.lib,依然可以运行,不知何故?!
综上所述,C与C++还是有不少区别的。
虽然更正了错误,但原因不甚了解,望高手指点一二。


相关文档:

Linux中常用的C\C++头文件

1、  一些头文件的作用:
<assert.h>:ANSI C。提供断言,assert(表达式)
<glib.h>:GCC。GTK,GNOME的基础库,提供很多有用的函数,如有数据结构操作函数。使用glib只需要包含<glib.h>
<dirent.h>:GCC。文件夹操作函数。struct dirent,struct DIR,opendir(),closedir(),readdir(),readdi ......

C面试题汇总

1、  int a=2,b=11,c=a+b++/a++; 则c值为多少?
【考点】编码规范。
表面上考察你对运算符优先级的掌握程度,但实际上优先级这些玩意很难死记硬背得住?大家的疑惑不就是运算符的结合顺序么?那么如何去避免呢?c=a+((b++)/(a++))不就行了么,其实问题背后考察的是你的编码规范,如何写清晰易懂的代码,如何在一个团 ......

c/c++到底能做什么?

    这两天学习C++学累了,看了很多的网站论坛,突然感觉迷茫了,c/c++到底能做什么呢?现在JAVA很热,也很好找工作,而且学起来还听说很容易入门。不用学计算机基础类的知识,可C/C++就不同了,只学编程还不行,还得学什么数据结构,算法,计算机原理,操作系统,汇编语言,编程用具等等,需要好多,感觉一 ......

c中数组大小不能用变量的一个解决办法

今天在写到用c来解析post数据的时候需要用到一个数组变量来放post的所有数据等着来解析,不想太浪费内存了。于是想着先申请一个最大威尔哦content_length大小的数组再说。但是不允许用变量来。比如
int length = atoi(getenv("CONTENT_LENGTH"));
char params[length];
memset(params, '\0', length);

那么char para ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号