C/C++也可以写的很安全!
今天看到一种比较安全的枚举写法!
enum example
{
item1 = 0,
item2,
item3,
item4,
item5,
max /* when you want to add element,please add before this */
};
当你使用它的时候:
example ex1;
if ( 0 <= ex1 && max < ex1 )
{
do something;
}
这样就可以防止枚举异常越界了!max就是上界!
相关文档:
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define err(msg) perror(msg)
static void mkdirs(const char *dir)
{
char tmp[1024];
char *p;
&nbs ......
MYSQL在 C API 中可用的函数:
mysql_affected_rows()
返回被最新的UPDATE, DELETE或INSERT查询影响的行数。
mysql_close()
关闭一个服务器连接。
mysql_connect()
连接一个MySQL服务器。该函数不推荐;使用mysql_real_connect()代替。
mysql_change_user()
改变在一个打开的连接上的用户和数据库。
mysql_ ......
C,C++网络编程学习简明指南
1. 扎实的C,C++基础知识
参考资料《C程序设计》,《C++ primer》。
2. TCP/IP协议
经典书是:W.Richard Stevens 著《TCP/IP详解》三卷书,卷1是协议,卷2是实现,卷3是TCP事务协议等。还有官方的协议文档:RFC
当然也可以在网上下载电子书。
经典的开源协议分析工具:Wireshark.
......
/* Offtimer.c.For auto halt. */
#include <time.h>
#include <stdlib.h>
#include <unistd.h>
#define DELAY 60/* Time of sleeping */
int main()
{
time_t now;
struct tm *p;
while(1)
{
now = time(NULL);
&n ......
给我们上ASP.NET的老师在讲解C#的时候,总是要询问我们C#和C/C++间的不同之处,或者一些细节问题,但是平时不怎么注意,还真把我们给问到了!!
一.不经过中间变量怎样交换两个数据 int a=25;b=10;
解法: a=a+b;//35
b=a-b;//25
  ......