c/c++
文章平均质量分 66
followingturing
这个作者很懒,什么都没留下…
展开
-
Linux c 连接处理MYSQL (API方式)
原创归andxu所有,转载请保留本链接。Mysql 安装:1. 先安装mysql 代码: sudo apt-get install mysql-server mysql-client2. 再装开发包 代码: sudo apt-get install libmysqlclient15-dev (注意:如果不安装这个,将找不到mysql.h)安装完以后,原创 2012-08-10 12:03:02 · 1388 阅读 · 0 评论 -
undefined reference to 'pthread_create' 问题
由于是Linux新手,所以现在才开始接触线程编程,照着GUN/Linux编程指南中的一个例子输入编译,结果出现如下错误:undefined reference to 'pthread_create'undefined reference to 'pthread_join'问题原因: pthread 库不是 Linux 系统默认的库,连接时需要使用静态库 libpthrea转载 2012-07-03 17:26:41 · 557 阅读 · 0 评论 -
linux socket 学习笔记
最近开始学习linux下的网络通信,这也是我大学本科阶段的一个学习盲点,所以要尽快补上。 网络通信最基础也是最终要的方式就是socket,下面总结一下socket下的API: 1.创建套接字:socket() /* Create a new socket of type TYPE in domain DOMAIN, using protocol PROTOCOL. If原创 2012-07-03 10:09:08 · 562 阅读 · 0 评论 -
linux下argc、argv参数的作用
1.其实: int main(int argc,char *argv[]) 是 UNIX 和 Linux 中的标准写法,而 intmain() 只是 UNIX 及 Linux 默许的用法.. 那究竟 argc,argv[] 有何之用呢?下面看个例子 edit.c 就会明白它们的用法了: #include #include int main(int argc,char *arg转载 2012-07-02 01:04:44 · 21973 阅读 · 0 评论 -
select 和 epoll
最近有朋友在面试的时候被问了select 和epoll效率差的原因,和一般人一样,大部分都会回答select是轮询、epoll是触发式的,所以效率高。这个答案听上去很完美,大致也说出了二者的主要区别。今天闲来无事,翻看了下内核代码,结合内核代码和大家分享下我的观点。一、连接数我本人也曾经在项目中用过select和epoll,对于select,感触最深的是linux下select最大转载 2012-06-30 12:12:59 · 662 阅读 · 1 评论 -
LINUX C++ namespace string
编译时出现的问题:Linux C++ 编程“cout作用域中尚未声明”解决办法解决办法:方法一:在 #include 下面加上一句“using namespace std;”方法二:在使用cout时将cout替换为std::cout这个问题在用string的时候也存在同样的问题。所以使用#include 之后,也要加上using namesp原创 2012-07-12 13:22:09 · 669 阅读 · 0 评论 -
(转载)LINUX下c语言SOCKET客户端示范
学习代码,版权归原作者所有。原文:http://www.oschina.net/code/snippet_242622_9944#include // for sockaddr_in#include // for socket#include // for socket#include // for printf#include转载 2012-06-29 15:42:59 · 3313 阅读 · 0 评论 -
linux c socket 开发与编译实例(转)
这篇日志还是先从一个能够运行起来的例子出发,一旦能顺利的看到程序的成功运行,那么接下来的事件我想应该是问为什么了?似乎这样更加容易理解和掌握。对于socket程序的概念这里就不多写了,但我相信,如果能看完这整篇文章,我相信不会再有这样的疑问的。下面将编写一个c/s结构的程序,主要功能是client将向server发送一些消息,而当server收到client的请求时,并向client发送一转载 2012-06-29 15:37:15 · 942 阅读 · 0 评论 -
Linux下makefile教程
转自陈皓 (CSDN)概述——什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和 professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你转载 2012-07-10 10:37:03 · 1494 阅读 · 0 评论 -
Cannot open precompiled header file
这个错误是缺少预编译头文件产生的Project-->Properties-->Configuration Properties-->C/C++-->Precompiled Headers-->Create/Use Preccompiled Header.选择Create Precompiled Header(/YC)选项,再Rebulid 一下就产生了.pch文件。再将刚才的选项改回到Use转载 2012-05-23 13:06:50 · 1015 阅读 · 0 评论 -
c语言错误信息 中英文对照
<br />不错,不错,转了`<br />_______________________________________________<br />Ambiguous operators need parentheses<br />不明确的运算需要用括号括起<br />Ambiguous symbol ``xxx``<br />不明确的符号<br />Argument list syntax error<br />参数表法<br />Array bounds missing<br />丢失数界限符<br /转载 2011-05-07 16:16:00 · 1199 阅读 · 0 评论 -
pthread_join/pthread_exit用法实例
函数pthread_join用来等待一个线程的结束。函数原型为: extern int pthread_join __P ((pthread_t __th, void **__thread_return)); 第一个参数为被等待的线程标识符,第二个参数为一个用户定义的指针,它可以用来存储被等待线程的返回值。这个函数是一个线程阻塞的函数,调用它的线程将一直等待到被等待的线程结束为止,当函转载 2012-07-03 17:33:51 · 1181 阅读 · 0 评论 -
BootStrap入门教程 (四)
上讲回顾:Bootstrap组件丰富同时具有良好可扩展性,能够很好地应用在生产环境。这些组件包括按钮(Button),导航(Navigation),缩略图( thumbnails),提醒(Alert),进度条(progress bar)等,能够很好减少前端工程师的代码量,实现更加丰富充实的页面。 Bootstrap作为一套良好的前端工具,要实现现代的动态页面效果,javasc转载 2012-07-18 13:27:41 · 3590 阅读 · 2 评论 -
一个简单的游戏服务器框架
原地址:http://software.intel.com/zh-cn/blogs/2012/03/22/400010056/?cid=sw:prccsdn2203最近一段时间不是很忙,就写了一个自己的游戏服务器框架雏形,很多地方还不够完善,但是基本上也算是能够跑起来了。我先从上层结构说起,一直到实现细节吧,想起什么就写什么。第一部分 服务器逻辑原创 2012-08-21 11:06:47 · 830 阅读 · 0 评论 -
Linux下c语言多线程编程
引言 线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多 为什么有了进程的概念后,还要再引入线程呢?使用多线程到底有哪些好处?什么的系统应该选用多线程?我们首先必须回答这些问题。转载 2012-08-01 12:59:56 · 1908 阅读 · 0 评论 -
小议 “undefined reference to” 与 “在此作用域中尚未声明”
我想这是linux c 初学者常常遇到的问题,我也曾经历不小的困扰,现在简单分析一下:在此作用域中尚未声明本质原因:函数名没有找到。解决思路:检查函数名是否拼错,检查库是否包含,检查namespace是否正确。。undefined reference to本质原因:有函数声明,但是没有找到函数的实现。解决思路:检查.cpp是否连接正常,检查库是否包含(典原创 2012-08-01 12:13:35 · 2439 阅读 · 0 评论 -
linux c 多线程执行顺序解析
这个线程时序的实验非常好,用简单的程序来分析系统的执行流程。整理格式后贴在这里,学习学习~-----------------------------------------------------------------------------------------------------------------------------1.综述:多转载 2012-08-01 11:45:33 · 1240 阅读 · 0 评论 -
gcc提示库里文件未包含( “undefined reference to”)
今天遇到了一个诡异的问题:编译通过,链接时候出错,提示:./lib4//ccode/lib/libulccode.a(ul_ccode.o): In function `load_bj':/home/search/libsource/build/ccode_4.0.0.0/ul_ccode.cpp:1634: undefined reference to `ul_fsize(char con原创 2012-07-28 13:18:11 · 2998 阅读 · 0 评论 -
SVN遇见的大面积修改的提交问题
(Andxu版权所有,原则上不建议转载,如转载,请保留本Page链接和此声明)Linux C 开发上手已经快一个月了,SVN作为一个优秀的版本控制软件,的确为我们的开发提供和很大的方便。但是我一直有一个纠结的问题:问题描述:如果我co下来一个文件夹,里面由很多多层次的/复杂的文件。我进行了大面积的修改,如很多文件被修改,删除,重命名,移位或者对文件夹进行了重新组织,ci时候提示各种各样原创 2012-07-28 13:52:54 · 2651 阅读 · 0 评论 -
Vim对中文编码的支持
1、支持中文编码的基础 Vim要更好地支持中文编码需要两个特性:+multi_byte和+iconv,可以用|:version|命令检查当前使用的Vim是否支持,否则的话需要重新编译。 2、影响中文编码的设置项Vim中有几个选项会影响对多字节编码的支持: encoding(enc):encoding是Vim的内部使用编码,encoding的设置会影响Vim内部的Buff转载 2012-07-28 14:09:26 · 659 阅读 · 0 评论 -
Linux 抓取网页方式(curl+wget)
Linux抓取网页,简单方法是直接通过 curl 或 wget 两种命令。curl 和 wget 命令,目前已经支持Linux和Windows平台,后续将介绍。curl 和 wget支持协议curl 支持 http,https,ftp,ftps,scp,telnet等网络协议,详见手册 man curlwget支持 http,https,ftp网络协议,详见手册m转载 2012-08-09 17:59:20 · 969 阅读 · 0 评论 -
linux下LibCurl编程
1 LibCurl简介LibCurl是免费的客户端URL传输库,支持FTP,FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, FILE ,LDAP等协议,其主页是http://curl.haxx.se/。Libcurl具备线程安全、IpV6兼容、易于使用的特点。本文档主要介绍LibCurl在http协议方面的应用。1.1HT转载 2012-08-10 14:17:25 · 8726 阅读 · 0 评论 -
用VC++实现Console程序显示彩色文本
<br />用vc++写console程序时,整天对着黑纸白字的屏幕,感觉很郁闷吧?很多人想用CONIO.H/GRAPHICS.H中的一些函数来实现,却发现 VC++根本没有这些头文件。当然了CONIO.H/GRAPHICS.H是BORLAND TC/BC专有的头文件,所以vc++中根本没有这些文件。把这两个头文件COPY过来,然后用??答案当然是否定的。其实VC++中也有相关的函数来实现console彩色文本及背景的显示。下面我们就看看VC++如何实现彩色文本。 <br /> 在vc++用API函数G转载 2011-05-21 21:40:00 · 507 阅读 · 0 评论 -
c语言 printf()输出格式控制
<br />1.转换说明符<br /> %a(%A) 浮点数、十六进制数字和p-(P-)记数法(C99)<br /> %c 字符<br /> %d 有符号十进制整数<br /> %f 浮点数(包括float和doulbe)<br /> %e(%E) 浮点数指数输出[e-(E-)记数法]<br /> %g(%G) 浮点数不显无意义的零"0"<br />转载 2011-05-19 21:09:00 · 649 阅读 · 0 评论 -
谁说C语言很简单?
<br />C语言并不简单,让我们来看看下面这些示例:<br /> <br />为什么下面的代码会返回0?(这题应该很简单吧)<br /> int x;<br /> return x == (1 && x);<br />本题主要是关于C/C++中变量初始化的问题。 <br /> <br />为什么下面的代码会返回0而不是-1? <br /> return ((1 - sizeof(int)) >> 32);<br />答案:sizeof 是一个unsigned的类型,所以…… <br /> <br />转载 2010-11-02 20:43:00 · 504 阅读 · 0 评论 -
语言的歧义
<br /> 语言是人与人相互沟通的途径,而计算机语言则是人和计算机沟通的途径。就算是任何再完美的自然语言都会有歧义,但是又是什么让人和计算计算机间产生了歧义呢?<br />下面这篇文章来自Gowri Kumar的Puzzle C一文。我做了一些整理,挑选了其中的一些问题,并在之后配上相应的答案(这些答案是我加的,如果需要原版的答案可以直接和本文作者Gowri Kumar联系,作者的联系方式可以从这里得到)。<br />puzzle 1<br />此段程序的作者希望输出数组中的所有元素,但是他却没有得到他转载 2010-11-02 20:52:00 · 514 阅读 · 0 评论 -
vc6中for语句定义的变量的作用域超出for循环的解决办法
<br />#define for if(0); else for <br /> <br />你在vc下编译面的程序:用 <br />int main() <br />{ <br /> for(int i = 0; i < 100; ++i) <br /> ; <br /> for(int i = 0; i < 100; ++i) // C2374: 'i': Redefinition; multiple initialization <br /> ; <br /> return 0; <转载 2010-11-02 18:53:00 · 1842 阅读 · 2 评论 -
C++和JAVA的区别
<br />C++和JAVA的区别<br />声明:本内容共分为三部分,即三篇文章. JAVA和C++的区别介绍框架纲领如下:<br />(一) 序言:<br />(二) 我学习二者的个人感受:<br />(三) 个人建议:<br />(四) 用JAVA中继承的特性来描述C++和JAVA的关系图示:<br />(五) JAVA和C++的区别(前言导读):<br />(六) JAVA和C++的基本区别(开始华山论剑)<br />1)JAVA摒弃的C++内容。<br />2)JAVA的新特性。<br />3)J转载 2010-11-02 18:33:00 · 946 阅读 · 0 评论 -
c++并发编程,简单模拟飞机订票系统
#include #include DWORD WINAPI Fun1Proc(LPVOID lpParameter);DWORD WINAPI Fun2Proc(LPVOID lpParameter);int tickets=100;HANDLE hMutex;void main(){ HANDLE hThread1; HANDLE hThread2; hThread1=CreateThread(NULL,0,Fun1Proc,NULL,0,NULL); hThread2=CreateThread(NUL转载 2010-12-17 14:27:00 · 5470 阅读 · 1 评论 -
linux下怎么编译c程序
<br />不错,特别记载这里<br />————————————————————————<br />http://www.javaeye.com/topic/240578转载 2010-12-06 09:09:00 · 651 阅读 · 0 评论 -
一个数组越界问题 数组越界
今天看到一道腾讯的面试题,有点意思,总结在这里了。 这是一个数组越界的问题,当越过边界,会出现循环,类似于求模运算。#define MAX 255int main(){ unsigned char A[MAX],i; for (i=0;iMAX=255,数组A的下标范围为:0..MAX-1,这是其一,其二 当i循环到255时,循环内执行: A[255]=255;这句本身没有问题,但是返回for (i=0;ii++以后i又为0了..无限循环下去.注:char类型为一个字节,取值范围是[-12转载 2010-06-01 19:16:00 · 1419 阅读 · 6 评论 -
c++把类声明作为单独文件
main.cpp//main.cpp#include "Point.h"#include "circl.h"#include "Cyl.h"#include "iostream"using namespace std;int main(){ Point p1; p1.display(); Point p2(10,10); p2.display(); p2.change_vale(5,5); p2.display(); Circle c1; c1.d转载 2010-06-01 19:46:00 · 970 阅读 · 0 评论 -
'point' 'class' type redefinition
这个错误的出现是由于你重复定义同一个类的名字比如:class A{...} 之后有定义了 struct A{...}还有另一个可能是:一个类的头文件被多次引入,这样编译器也会错误的认为你重复定义了同一个类。比如:文件:A.h, B.h, C.cpp在B.h中有:#include "A.h"在C.cpp中有:#include "A.h" 而起还有 #include "B.h"这样错误还是会别编译器发原创 2010-05-24 15:56:00 · 1316 阅读 · 0 评论 -
标准模板库 Introduction of STL
FROM BAIDU.COM标准模板库STLSTL = Standard Template Library,标准模板库,惠普实验室开发的一系列软件的统称。它是由Alexander Stepanov、Meng Lee和David R Musser在惠普实验室工作时所开发出来的。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说,STL是一些“容器”的集合,这些“容器”有list,vector,set,map等,STL也是算法和其他一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年转载 2010-06-25 12:11:00 · 916 阅读 · 0 评论 -
(有点意思)恶搞之手机垃圾信息发送器
<br /><br /> <br />手机信息怎么发呢?一次在移动梦网上,点击忘记密码,在弹出的页面上再点获取随机短信密码,一个短信就发到手机上啦,哇。<br /> 看着看着,好奇的我,就想搞个不断点击那个页面的恶搞软件,好有动力,搞了几个小时都不累。<br /> 做的过程中,遇到的挫折还不少,开始想法分析它的源代码,发现很简单,就用DW做个网页,做个按钮,调用想它一样的功能的函数,可惜不知为什么不行:<br /> 最后调过头,不分析啦.用MFC上的webBrowser控件,打开http://g转载 2010-11-04 22:20:00 · 3151 阅读 · 1 评论 -
(有点意思)QQ信息发送机
<br /><br /> <br /> QQ信息发送机,需要打开要发送的QQ消息窗口,然后采用键盘模拟的方法<br /> keybd_event(VK_CONTROL,NULL,NULL,NULL);<br /> keybd_event('V',NULL,NULL,NULL); <br /> keybd_event('V',NULL,KEYEVENTF_KEYUP,NULL);<br /> keybd_event(VK_CONTROL,NULL,KEYEVENTF_转载 2010-11-04 22:23:00 · 694 阅读 · 0 评论 -
unexpected end of file found
fatal error RC1004: unexpected end of file found原创 2011-05-17 15:45:00 · 2083 阅读 · 1 评论 -
missing ';' before 'PCH creation point'
missing ';' before 'PCH creation point'原创 2011-03-17 18:20:00 · 5885 阅读 · 1 评论 -
在 Visual C++ 中使用内联汇编
<br />一、 优点 <br /> 使用内联汇编可以在 C/C++ 代码中嵌入汇编语言指令,而且不需要额外的汇编和连接步骤。在 Visual C++ 中,内联汇编是内置的编译器,因此不需要配置诸如 MASM 一类的独立汇编工具。这里,我们就以 Visual Studio .NET 2003 为背景,介绍在 Visual C++ 中使用内联汇的相关知识(如果是早期的版本,可能会有些许出入)。<br /> 内联汇编代码可以使用 C/C++ 变量和函数,因此它能非常容易地整合到 C/C++ 代码中。转载 2011-03-17 16:04:00 · 800 阅读 · 0 评论 -
模拟笔算 (加 减 乘 除)
<br /> 今天实现了一个小的算法例程,完全模拟笔算的方法,实现大整数的加减乘除。<br /> 刚开始,没什么思路,后来用笔算了一遍,其逻辑便一目了然了。<br /> ————————————————————————————————————————————<br />//*************************************************************************//** 模拟笔算 大数加减乘除//** 本程序是简单算法示例 假设a原创 2011-03-20 18:01:00 · 1073 阅读 · 0 评论