自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

stpeace的专栏

涛哥不知何许人也,亦不详其姓字。好读书,求甚解。常著文章自娱,颇示己志。忘怀得失,有始有终......

原创 某哥一句话点醒我什么是网络编程------不过就是读写文件而已(大道至简)

上次我跟某哥说,我对网络编程不太熟悉,结果他说:              “网络编程很简单:在学校里写程序,你把数据写入文件,从文件中读取数据; 在公司里写程序,你把数据写入socket,  从socket中读取数据。两者道理是一样的!”

2013-10-29 22:59:10

阅读数 7706

评论数 3

原创 connect函数详解

不得不说,客户端的connect函数和服务端的accept函数是一对好基友,如果客户端没有去connect, 那么服务端的accept会一直在那里傻傻地痴痴地等待,我们先来看看connect函数的原型吧: WINSOCK_API_LINKAGE int WSAAPI connect( ...

2013-10-29 22:49:17

阅读数 19752

评论数 17

原创 closesocket函数和WSACleanup函数

closesocket函数的作用和socket函数的作用相反,释放为套接字分配的资源。        WSACleanup函数和WSAStartup函数的作用相反,终止对套接字库的使用。        用不着多说。

2013-10-29 22:37:50

阅读数 10003

评论数 0

原创 recv函数详解

别只顾着send数据啊,你也得接收一些数据啊,来而不往非礼也!如何接收?请看recv函数原型: WINSOCK_API_LINKAGE int WSAAPI recv( SOCKET s, char FAR * buf, int len, int flags ...

2013-10-29 22:06:32

阅读数 10115

评论数 2

原创 send函数详解

服务端都已经accept了客户端的请求,于是客户端与服务端也就勾搭上了,可以暧昧了,可以发信息了,怎么发送呢?用send函数即可,我们来看看send函数的原型: WINSOCK_API_LINKAGE int WSAAPI send( SOCKET s, const char FA...

2013-10-29 21:58:45

阅读数 13771

评论数 7

原创 accept函数详解

既然服务端已经很虔诚了,很真诚了,处于倾听状态,那么该是去尝试接受客户端请求的时候了,别只顾着倾听,不去接纳别人。接纳客户端请求的函数是accept, 我们先来看看函数的原型: WINSOCK_API_LINKAGE SOCKET WSAAPI accept( SOCKET s, ...

2013-10-29 00:08:47

阅读数 51241

评论数 31

原创 listen函数详解

套接字与“地方”绑定好了后,对于服务端而言(这里是TCP情况),自然就应该乖乖地去聆听,聆听客户端的需求,否则怎么会叫服务客户呢?如何去聆听呢?很简单,这个单词你早就学过了,那就是listen, 我们来看看listen函数的原型:  int PASCAL FAR listen (SOCKET s,...

2013-10-28 23:49:31

阅读数 21818

评论数 4

原创 bind函数详解

前面我们已经说了, 套接字也创建了, “地方”也定义了,下面就需要将socket放置在这个“地方”(TCP),将他们紧紧地捆绑在一起,用bind函数吧, 我们来看看函数原型: int PASCAL FAR bind (SOCKET s, const struct sockaddr FAR *add...

2013-10-28 23:33:45

阅读数 33299

评论数 0

原创 SOCKADDR_IN结构体的作用是:定义“地方”,宣誓主权

套接字也创建了,总得要为套接字安排个地方吧,SOCKADDR_IN结构体就的作用就是定义“地方”,宣誓对这个“地方”拥有主权,比如下列用法: addrSrv.sin_family = AF_INET; // TCP/IP协议族 addrSrv.sin_addr.S_un.S_addr = in...

2013-10-28 23:07:34

阅读数 9131

评论数 0

原创 socket函数详解 (有了新的认识)

我们先来看一下socket函数的原型: SOCKET PASCAL FAR socket (int af, int type, int protocol);       典型的调用方式为:  unsigned int sockSrv = socket(AF_INET, SOCK_STREAM...

2013-10-27 23:40:31

阅读数 10578

评论数 1

原创 WSAStartup函数的用途

我们先来看看WSAStartup函数的原型 int PASCAL FAR WSAStartup(WORD wVersionRequired, LPWSADATA lpWSAData);      可以这么理解,第一个参数提供必要信息(为了加载套接字库),第二个参数获取相关信息(获取相关信息)。看看...

2013-10-27 23:25:27

阅读数 9126

评论数 0

原创 winsock.h中的MAKEWORD宏

什么是WORD? 看看就知道了:typedef unsigned short      WORD;        那什么是MAKEWORD宏呢?先看结果: #include #include int main() { printf("%x\n", MAKE...

2013-10-27 22:15:47

阅读数 7031

评论数 0

原创 #include <winsock2.h> #pragma comment(lib, "ws2_32.lib") 与套接字(socket)

winsock2.h是套接字接口, ws2_32.lib是套接字实现。那么什么是套接字呢?套接字就是一个“孔”,应用程序只管网这个“孔”里面插入数据,并从这个“孔”里面取出数据即可。      看看什么是套接字:         应用程序只管与套接字进行数据交互,至于数据是怎么传输的,应...

2013-10-27 22:01:20

阅读数 14204

评论数 3

原创 RSA算法的简要实现(其实原理非常简单)

前面的博文(转载阮一峰)已经讲了RSA算法的基本原理。很久以前的博文曾涉及过模幂算法,今天终于可以登台亮相了,先回顾一下模幂算法的程序吧: #include using namespace std; // 返回值: a的b次方,然后对n求模 int getMod(int a, int b, in...

2013-10-27 17:28:21

阅读数 8603

评论数 3

原创 strtok在分割字符串中的重要用途

#include #include int main() { char str[] = " I # # love you ## more than ### you can imagine!#"; char delims[] = "#...

2013-10-27 14:49:57

阅读数 6280

评论数 0

原创 如何利用C语言来获取当地时间和UTC时间? (设当地时间是北京时间)

#include #include int main() { time_t t = time(NULL); tm *tp = localtime(&t); // 北京时间 printf("%d/%d/%d\n", tp...

2013-10-27 13:39:19

阅读数 22893

评论数 0

原创 利用sprintf和sscanf实现十六进制和十进制之间的相互转换

#include int main() { char s[100] = {0}; sprintf(s, "%x", 15); printf("%s\n", s); // f char str[100] = "f&quo...

2013-10-27 12:49:26

阅读数 28649

评论数 2

原创 %02x与%2x

代码做得多的人,肯定经常见到%02x这个东西,下面写个小程序学习一下: #include int main() { int i; for(i = -20; i < 21; i++) { printf("%2x\n", i); print...

2013-10-27 12:29:59

阅读数 16995

评论数 2

转载 RSA算法完全解析(地球上最重要的算法之一)

转自:阮一峰的网络日志(一、二)       强力推荐 http://www.ruanyifeng.com/blog/2013/06/rsa_algorithm_part_one.html http://www.ruanyifeng.com/blog/2013/07/rsa_algorithm_p...

2013-10-26 00:06:10

阅读数 6443

评论数 0

原创 find 函数和string :: npos 的用法

设1.txt文件内容如下: name = baidu url = www.baidu.com          看程序: #include #include #include using namespace std; int main() { ifstream in("1.tx...

2013-10-25 23:24:58

阅读数 15659

评论数 0

原创 如何利用C++ Builder获取系统的sid信息?

头文件代码: //--------------------------------------------------------------------------- #ifndef Unit1H #define Unit1H //------------------------------...

2013-10-20 23:41:32

阅读数 7055

评论数 0

原创 如何用C语言获取系统的sid信息?

在Win7中,你可以在cmd中输入whoami/user来轻松获取sid信息,但是,要在程序中获得,该怎么做呢?如下(Windows API, 我服了你): #include #include #define MAX_NAME 256 void ConvertSid(PSID pSid, L...

2013-10-20 21:22:57

阅读数 9330

评论数 6

原创 如何用C语言获取系统的用户登录名?

当然啦,你可以在cmd中用whoami命令查到系统的登录名,但如果程序中要用到系统的登录名,那该如何获取呢?Windows API就是强大,如下: #include #include #define MAX_NAME 256 int main() { char szUserName[MAX...

2013-10-20 19:56:59

阅读数 9811

评论数 0

原创 Source Insight : 程序员最得心应手的代码阅读和编辑工具(高效)

很多人搞不清代码文件与工程文件的关系,这个我就不想多说了。我只想推荐一款程序员必备的代码阅读和编辑工具:Source Insight. 没有装Source Insight的程序员,赶快装一个,体验一下吧。     Source Insight很强大,几乎没有它做不到的,只有你想不到的。找几个代码文...

2013-10-19 23:28:18

阅读数 7306

评论数 0

原创 Notepad++ 是程序员的必备利器之一

Notepad++是一款及其强大而又及其简洁的编辑器。只要你能想得到,只要你需要,只要客观上可以实现的功能,它都有,还犹豫什么呢?赶快用吧,如果遇到你需要但你没有用过的功能,赶快查阅,Notepad++肯定提供了。

2013-10-19 22:41:12

阅读数 8071

评论数 0

原创 C++ Builder 中定时器的应用

今天,碰到一函数,一直在被调用,但一直找不到调用它的地方,跟踪了一下,原来该函数是定时器回调函数,示例程序如下(Timer1Timer是定时器回调函数): //---------------------------------------------------------------------...

2013-10-19 22:28:46

阅读数 9337

评论数 0

转载 Microsoft Visual C++ 和 Borland C++ Builder 之比较

来源:百度(最原始的地方未知,我大概整理了一下格式)。           本文就试图从技术水平、易用性、稳定性、发展前景等对Visual   C++和C++Builder(Delphi)这两个重量级开发工具进行比较分析。               由于Delphi与C++Builder同为...

2013-10-19 22:10:53

阅读数 29587

评论数 4

原创 什么是虚拟机?

听到虚拟机,很多人会头痛,看见过计算机,拖拉机,单片机,飞机等各种各样的“ji”, 就是没看见过虚拟机,其实, 取名叫虚拟机,并不能说明命名者故弄玄虚,是因为虚拟机本身就很虚,别以为虚拟机是真正的机器。虚拟机其实是一个软件(不是硬件),这个软件的功能是在现有计算机硬件和OS的基础上给你提供一个新的...

2013-10-19 21:56:39

阅读数 6366

评论数 0

原创 为什么一个函数被调用了,但看不到任何地方在调用它?(某公司面试题目)

在项目中,你会经常看到这样的事情,某个函数有定义,但没有调用它的地方(在工程中,只有定义的地方有函数名这个字段),而该函数确实被调用了,这是为什么呢?这是系统指定的回调函数,最简单的例子是main函数。另外,一些按钮对应的响应函数,定时器对应的响应函数均是此类情况。

2013-10-19 21:41:49

阅读数 6415

评论数 2

原创 如何用C语言获取网卡的mac地址?(当然,你也可以用类似方法获取所有ip)

在实际项目中,常常需要获取网卡的mac地址,下面,用C语言来做: #include #include #include #pragma comment(lib, "iphlpapi.lib") int main() { int i = 0; int ret = 0;...

2013-10-19 00:29:51

阅读数 11360

评论数 0

原创 如何利用system函数将相应信息写入文件?

#include int main() { system("ipconfig > ip.txt"); return 0; }

2013-10-18 22:49:48

阅读数 6532

评论数 0

原创 在cmd中输入: ipconfig /? 试试,你就知道/?的用法了

牛逼的人会用命令行操作电脑,当然,命令行确实可以让你装逼一会儿。

2013-10-18 22:18:24

阅读数 9594

评论数 0

原创 什么是浏览器?

浏览器就是一个软件,一个系统,甚至,你可以把它理解为一个函数。        1.  浏览器将本地html文件解析为网页;        2. 浏览器将url请求发送给服务器,服务器返回html文件,接着,浏览器将该html文件解析为网页。          这就是浏览器,别扯其它的。

2013-10-18 22:13:04

阅读数 6148

评论数 0

原创 为啥你要返回栈指针?

今天看代码,看到之前某人写了一个函数,返回栈指针,我晕,下面来看看返回栈指针会有什么后果: #include char *fun() { char str[100] = "123"; return str; } int main() { char *str = fu...

2013-10-17 23:04:33

阅读数 6139

评论数 0

原创 什么是门户网站?

摘自百度:门户(portal),原意是指正门、入口,现多用于互联网的门户网站和企业应用系统的门户系统。门户网站,也是一个被称为链接页面,提出一个统一的信息的方式从不同的来源研究。所谓门户网站,是指通向某类综合性互联网信息资源并提供有关信息服务的应用系统。       点击进去看看,就知道什么叫门...

2013-10-16 23:46:41

阅读数 6130

评论数 0

原创 年轻人就是这样:地上有坨臭狗屎,不踩一下,不闻一下,就不相信那是臭狗屎(变量和函数可以同名吗?)

变量和函数可以同名吗?我的答案是:即使可以同名,也不可以让其同名。今天下午,定义了一个变量,与别人的函数名居然相同了,结果:结果不对,但是没有报错。改了之后,结果就对了,浪费我一个多小时。我晕。下次谁还说变量可以与函数同名,我就鄙视谁。装逼的人要说:其实,可以同名。我说:滚,别装逼!       ...

2013-10-15 23:18:46

阅读数 6386

评论数 0

原创 界面卡死咋办?多线程来帮忙!

写了个超级简单的软件,界面如下:              1. 单线程: //--------------------------------------------------------------------------- #include #pragma hdrstop #in...

2013-10-15 00:14:47

阅读数 6301

评论数 0

原创 #include <sys/stat.h>和#include <sys\stat.h>都对

#include #include #include int getFileSize1(char str[]) { FILE *fp = fopen(str, "rb"); fseek( fp, 0, SEEK_END ); int...

2013-10-14 23:08:23

阅读数 8227

评论数 0

原创 如何获取文件的字节数?

实际上,之前博文中已经有两处用到了,现总结一下: #include #include #include int getFileSize1(char str[]) { FILE *fp = fopen(str, "rb"); fseek( fp, 0, SEE...

2013-10-14 23:05:52

阅读数 8253

评论数 0

原创 C语言中有空字符吗?没有!

#include int main() { char c = ''; // 编译错误 return 0; }

2013-10-14 22:57:48

阅读数 6384

评论数 0

提示
确定要删除当前文章?
取消 删除