Win C/C++
文章平均质量分 83
逍遥子(。ˇε ˇ。)
上善若水
展开
-
MinGW使用小结和链接
一、有用的链接 1. TuxPaint。如果你想用mingw编译sdl,gtk,可以参考tuxpaint作者给出的文档,里面介绍了一些旧版本的mingw编译方法,很详细。http://johnnypops.demon.co.uk/mingw/(已废) 2. MozillaBuild。一个配好的命令行编译环境(包括mingw)可以参考它的方法自己定制绿色版的msys/ming转载 2012-05-28 11:15:53 · 5416 阅读 · 0 评论 -
跟我一起写 Makefile
什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多 的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从转载 2012-05-29 14:06:51 · 579 阅读 · 0 评论 -
Eclipse下配置CDT和MinGW
本文介绍如何在Windows下配置Eclipse+CDT+MinGW的C/C++开发环境。Eclipse对C/C++的支持Eclipse提供了CDT(C/C++ Development Tooling)支持C/C++的开发。CDT不提供编译器,但CDT支持跟GNU工具链的集成,GNU工具链包括GNU的make、gcc编译器和gdb调试工具等。不同平台下,GNU工具链的安装是有所转载 2012-05-30 10:39:16 · 875 阅读 · 0 评论 -
Video for Linux
Video for LinuxV4L IRC Logslinkshttp://linux.bytesex.org/v4l2/http://www.exploits.org/v4l/ Video for Linux resourcesLinuxTV.orgV4L WikiBill Dirks - http://www.thedirks.org/v4l2/Video f转载 2012-06-04 11:41:17 · 1924 阅读 · 0 评论 -
uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型
在nesc的代码中,你会看到很多你不认识的数据类型,比如uint8_t等。咋一看,好像是个新的数据类型,不过C语言(nesc是C的扩展)里面好像没有这种数据类型啊!怎么又是u又是_t的?很多人有这样的疑问。论坛上就有人问:以*_t结尾的类型是不是都是long型的?在baidu上查一下,才找到答案,这时才发觉原来自己对C掌握的太少。那么_t的意思到底表示什么?具体的官方答案没有找到,不过我觉转载 2012-06-04 17:26:58 · 1620 阅读 · 0 评论 -
在VC下如何使用头文件unistd.h
头文件unistd.h是Linux/Unix的系统调用,包含了许多UNIX系统服务函数原型,如open、read、write、_exit、getpid等函数。在linux下能够编译通过的包含此头文件的程序,在VC下编译时出现了如下问题 fatal error C1083: Cannot open include file: 'unistd.h': No such file or direc转载 2012-06-04 17:40:33 · 2865 阅读 · 0 评论 -
video4linux(v4l)使用摄像头的实例基础教程与体会
前言.写这篇文章的想法和思路由于毕业设计的关系,本人要做一下在linux系统中视频的相关工作比如采集和传输。由于本人是菜鸟一个,所以是需要上网搜一搜看大家都是如何做的,当然开始都是理不出一个头绪,但是很多文章都提到了video4linux(v4l),所以我觉得工作的展开可以先从这里开始,。看了网上的一些文章,其中比较重要的也是比较知名的吧,有戴小鼠写的《基于Video4Linux 的USB 摄转载 2012-06-04 11:36:06 · 619 阅读 · 0 评论 -
十个最好的PDF生成库
1)FPDFhttp://www.fpdf.org/。这是一个纯PHP的库,它没有使用PDFlib。完全免费。没有任何license的限制。 2)iTexthttp://www.lowagie.com/iText/。 这是一个基于Java的库。iText#则是一个基于.NET的库。使用MPL/LGPL的license。 3)AlivePDF转载 2012-06-08 15:21:41 · 2175 阅读 · 0 评论 -
6个变态的C语言Hello World程序
下面的六个程序片段主要完成这些事情: 1. 输出Hello, World 2. 混乱C语言的源代码下面的所有程序都可以在GCC下编译通过,只有最后一个需要动用C++的编译器g++才能编程通过。hello1.c #define _________ } #define ________ putchar #define _______转载 2012-05-23 10:05:13 · 468 阅读 · 0 评论 -
C/C++二维数组的动态分配及参数传递
1. C语言动态分配二维数组(1)已知第二维Code-1char (*a)[N];//指向数组的指针a = (char (*)[N])malloc(sizeof(char *) * m);printf("%d\n", sizeof(a));//4,指针printf("%d\n", sizeof(a[0]));//N,一维数组free(a);(2)已知第一转载 2012-05-23 10:07:04 · 541 阅读 · 0 评论 -
C函数库介绍:dos.h、alloc.h、malloc.h、stdlib.h、process.h
存贮分配子程序,所在函数库为dos.h、alloc.h、malloc.h、stdlib.h、process.hint allocmem(unsigned size,unsigned *seg)利用DOS分配空闲的内存,size为分配内存大小,seg为分配后的内存指针int freemem(unsigned seg)释放先前由allocmem分配的内存,seg为指定的内存指针in转载 2012-05-23 10:07:58 · 2229 阅读 · 0 评论 -
C语言的谜题
语言的歧义谁说C语言很简单?6个变态的C语言Hello World程序如何加密/弄乱C源代码C语言的谜题我们可以看到很多C语言相关的一些东西。比如《语言的歧义》主要告诉了大家C语言中你意想不到的错误以及一些歧义上的东西。而《谁说C语言很简单》则通过一些看似你从来不可能写出的代码来告诉大家C语言并不是一件容易事情。《6个变态的hello wor转载 2012-05-23 10:09:45 · 426 阅读 · 0 评论 -
C语言使用cmd命令并获取输出方法
C语言使用cmd命令并获取输出方法在实践中,我们有时候需要用C语言来调用cmd的命令,并得到执行的结果,这里给出一个简单的例子。 #include // 描述:execmd函数执行命令,并将结果存储到result字符串数组中 // 参数:cmd表示要执行的命令// result是执行的结果存储的字符串数组// 函数执行成功返回1,失败返回0 int exec转载 2012-05-23 10:12:04 · 3103 阅读 · 0 评论 -
free指针时遭遇_CrtIsValidHeapPointer
malloc和free在教材里不知讲了多少,今天实际用到一处,就出问题了。案发现场是我用VC++在WINXP下编程,先看这一段代码{ BYTE *pBuffer; pBuffer = (BYTE *)malloc(64); pBuffer = pBuffer + 32; free(pBuffer); pBuffer = NULL;转载 2012-05-24 09:49:32 · 824 阅读 · 0 评论 -
jpeglib使用指南
下文转自:http://blog.csdn.net/achellies/archive/2009/06/03/4238056.aspx// --------------------------------------------------------------------------------------//您可以到www.ijg.org网站下载libjpeg的源码, I转载 2012-05-24 09:51:14 · 845 阅读 · 0 评论 -
清华大学ACM集训队培训资料(内部使用)
清华大学ACM集训队培训资料(内部使用)一、C++基础基本知识 所有的C++程序都是有函数组成的,函数又叫做子程序,且每个C++程序必须包含一个main函数,编译器(能够把源代码转换成目标代码的程序)把翻译后的目标代码和一些启动代码组合起来,生成可执行文件,main函数就是可执行文件的入口,所以,每个C++程序有且只有一个main函数。 下面我们看一个最简单转载 2012-05-24 09:57:58 · 1075 阅读 · 0 评论 -
如何加密/混乱C源代码
之前发表了《6个变态的C语言Hello World程序》[酷壳链接] [CSDN链接],主要是是像大家展示了一些C语言的变态玩法。也向大家展示了一下程序是可以写得让人看不懂的,在那篇文章中,可以看到很多人的留言,很多人都觉得很好玩,是的,那本来是用来供朋友们“消遣作乐”,供娱乐娱东而已,不必太过认真。不过,通过这种极端的写法,大家可以看到源代码都可以写得那么复杂难懂的。大家也许在赞叹之余一转载 2012-05-24 09:59:33 · 748 阅读 · 0 评论 -
谁说C语言很简单
前两天,Neo写了一篇《语言的歧义》其使用C语言讨论了一些语言的歧义。大家应该也顺便了解了一下C语言中的很多不可思异的东西,可能也是你从未注意到的东西。是的,C语言并不简单,让我们来看看下面这些示例: 1. 为什么下面的代码会返回0?(这题应该很简单吧) int x; return x == (1 && x); 本题主要转载 2012-05-24 10:01:51 · 700 阅读 · 0 评论 -
C语言编译器MINGW的使用说明
在mingw环境中生成和使用dll都是十分方便的。 1.生成dll gcc(g++) -shared -o test.dll test.c 一直用VS,看现在Eclipse很火,便想弄一下玩玩,用到了MINGW,继而用到了GCC,对GCC相当的不熟悉,从头开始学一些简单的吧。 简单的GCC用法~ gcc命令提供了非常多的命令选项,但并不是所有都要熟悉,初学时掌握几个常转载 2012-05-24 09:44:44 · 1669 阅读 · 0 评论 -
C语言转义字符
所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。转义字符 意义 ASCII码值(十进制) \a 响铃(BEL) 007 \b 退格(BS) 008 \f 换页(FF) 012 \n 换行(LF转载 2012-05-24 09:46:05 · 811 阅读 · 0 评论 -
C中如何调用C++函数?
C中如何调用C++函数?前阵子被问及一个在C中如何调用C++函数的问题,当时简单回答是将函数用extern "C"声明,当被问及如何将类内成员函数声明时,一时语塞,后来网上查了下,网上有一翻译C++之父的文章可以作为解答,遂拿来Mark一下。将 C++ 函数声明为``extern "C"''(在你的 C++ 代码里做这个声明),然后调用它(在你的 C 或者 C++ 代码里调用)。例转载 2012-05-24 09:47:52 · 489 阅读 · 0 评论 -
关于对齐和sizeof函数
关于指针和数组、结构和类的sizeof讲解http://blog.vckbase.com/billdavid/archive/2004/06/23/509.html关于联合体的sizeof讲解http://blog.vckbase.com/smileonce/archive/2005/08/08/10658.html关于对齐的小结性文章http://blog.vckbase.com/zha转载 2012-05-24 09:52:49 · 488 阅读 · 0 评论 -
获取当前时间的两种方法
#include#include //main()函数的定义void main(void){ //声明变量 time_t current_time; //得到当前系统时间 time(¤t_time); //转换系统时间为tm结构 tm *ptime=gmtime(¤t_time);转载 2012-05-24 09:54:35 · 750 阅读 · 0 评论 -
如何用C语言获取当前系统时间?
#include #include void main () { time_t rawtime; struct tm * timeinfo; time ( &rawtime ); timeinfo = localtime ( &rawtime ); printf ( "\007The current date/time is: %s", asctime转载 2012-05-24 10:00:26 · 1031 阅读 · 0 评论 -
无符号变量居然也能输出-1
今天一个很偶然的机会,需要回答一个将无符号数据存到有符号变量的问题。我编码如下,结果很有意思,我是在VC6里调试的,有高人看到可否帮忙指点下。int main(){ unsigned short temp1 = 65535; short temp2 = temp1; unsigned short temp3 = (unsigned short)temp2;转载 2012-05-25 11:15:34 · 1389 阅读 · 0 评论 -
也谈关于时间
最近转去搞低层些的单片机程序编程,在一块msp430上要增加一个国际标准时间,由于以前在VC中都是拿来用的,没遇到问题,也就不会去深究。在单片机上想用标准C里面的time(time_t*)函数求得系统时间,最后结果出不来。后来才知道原来以前是取得的是操作系统的时间,汗死,单片机没系统的啊,希望能够尽早让我搞嵌入式啊,呵呵。后来自己弄明白了,设个时间值,然后用单片机晶振累加计数,还是可以用t转载 2012-05-25 11:26:13 · 659 阅读 · 0 评论 -
用C语言调用WMI
标题: 用C语言调用WMI作者: Demon链接: http://demon.tw/programming/c-language-wmi.html版权: 本博客的所有文章,都遵守“署名-非商业性使用-相同方式共享 2.5 中国大陆”协议条款。这只是一篇翻译你可以用C语言调用WMI。虽然语法有一些不够C++友好,但是它可以工作。COM在初始设计的时候就能在C或C++中工作转载 2012-05-25 11:29:38 · 1893 阅读 · 0 评论 -
由switch选择结构理解局部变量
函数体内部自定义变量,称为局部变量,存储于栈(stack)中,由编译器自动分配和释放,局部变量的生存期(或者说作用域)是当前函数内部,使用时必须初始化,否则其值将不定。以前对局部变量的定义也就是这么多,而且也就那么在用。近期碰到如下一个问题:void func( void ){ int x = 2; switch ( x ) { in转载 2012-05-25 11:30:30 · 1076 阅读 · 0 评论 -
由一道面试题来看 Struct 的对界
本文节选自宋宝华的C/C++的struct深层探索一文,本人对其所描述的struct对齐比较喜欢,为此转来与大家分享,原文见http://blog.donews.com/21cnbao/archive/2005/09/08/544877.aspxIntel 、微软等公司曾经出过一道类似的面试题:#include #pragma pack(8)struct examp转载 2012-05-25 11:33:05 · 678 阅读 · 0 评论 -
也谈关于时间
最近转去搞低层些的单片机程序编程,在一块msp430上要增加一个国际标准时间,由于以前在VC中都是拿来用的,没遇到问题,也就不会去深究。在单片机上想用标准C里面的time(time_t*)函数求得系统时间,最后结果出不来。后来才知道原来以前是取得的是操作系统的时间,汗死,单片机没系统的啊,希望能够尽早让我搞嵌入式啊,呵呵。后来自己弄明白了,设个时间值,然后用单片机晶振累加计数,还是可以用t转载 2012-05-25 11:18:34 · 520 阅读 · 0 评论 -
用C写的一个读取BIOS时间的程序
/*FileName: TIMEBIOS.CAuthor : Crystal.ChenE-Mail : crystal.chen.cc@gmail.comDescrip : Get the BIOS time.Version : 0.1*/#include #include #include #include int main(void)转载 2012-05-25 11:28:14 · 4513 阅读 · 0 评论 -
语言的歧义
语言是人与人相互沟通的途径,而计算机语言则是人和计算机沟通的途径。就算是任何再完美的自然语言都会有歧义,但是又是什么让人和计算计算机间产生了歧义呢?下面这篇文章来自Gowri Kumar的Puzzle C一文。我做了一些整理,挑选了其中的一些问题,并在之后配上相应的答案(这些答案是我加的,如果需要原版的答案可以直接和本文作者Gowri Kumar联系,作者的联系方式可以从这里得到)。p转载 2012-05-25 11:34:42 · 619 阅读 · 0 评论 -
关于Win32同步锁
CSyncObject : 这个类是为win32提供公共同步接口的只有纯虚函数基类。微软基础类库提供了一些继承自CSyncObject的类。那就是CEvent,CMutex,CCriticalSection,和CSemaphore。CSyncObject||--CCriticalSection (临界区)|--CMutex (互斥量)|--CSemaphore (信号量转载 2012-07-09 10:14:10 · 1133 阅读 · 1 评论 -
C++11 多线程:数据保护
在编写多线程程序时,多个线程同时访问某个共享资源,会导致同步的问题,这篇文章中我们将介绍 C++11 多线程编程中的数据保护。数据丢失让我们从一个简单的例子开始,请看如下代码:#include #include #include #include using std::thread;using std::vector;using std:转载 2012-07-09 11:49:37 · 736 阅读 · 0 评论 -
MFC 改变static字体颜色、大小、背景颜色【自定义类】
新建一个MFC标准Dialog工程并生成一个CStatic的自定义类,我的类名为CColorStatic定义必要变量[cpp] view plaincopyprint?protected: COLORREF m_crText; // 字体颜色 COLORREF m_crBackColor;转载 2012-07-09 19:56:13 · 1925 阅读 · 0 评论 -
真彩色静态框CColorStatic类的设计实现
关于cstatic控件的自绘,网上也有很多的代码及文章,更有其界面画得很漂亮的、多种多样的功能。近来我自行封装实现了一个真彩色静态框类,目标初衷是从颜色、字体、光标入手,改变原始标准cstatic的色彩风格,使界面初步美化,具有好看的效果。同时作为一个基础简单的类来维护,为后续的功能增强及美化提供参考扩展,这个CColorStatic类的特点及功能如下:(1)文本、文本背景、控件背景的颜色,支转载 2012-07-09 23:31:49 · 2041 阅读 · 0 评论 -
VC 控制台颜色设置
通常控制台都是白字黑底的,千篇一律不免单调。适当的在控制台中加入一些彩色可以让人耳目一新,本文介绍如何使用系统API接口去修改控制台的文字和背景颜色。 主要用到如下二个函数:得到standard input, standard output, or standard error的设备句柄:HANDLE GetStdHandle(DWORD nStdHandle);转载 2012-07-11 14:57:10 · 685 阅读 · 0 评论 -
140种标准颜色的宏定义
在开发过程中,我们经常会使用到颜色,然而一些C++开发环境和库等可能未提供对这些颜色的定义。下面是对140种标准颜色的宏定义代码(C/C++),可将其保存为color.h 并在使用时包含这个头文件。这些颜色的定义参见 http://thftech.com/cgi-bin/140/140_read.pl为了便于颜色查找,在代码的后面编制了颜色表,排列顺序和代码一致。转载 2012-07-12 00:07:30 · 4869 阅读 · 1 评论 -
秒杀多线程第一篇 多线程笔试面试题汇总
第一篇 多线程笔试面试题汇总 多线程在笔试面试中经常出现,下面列出一些公司的多线程笔试面试题。首先是一些概念性的问答题,这些是多线程的基础知识,经常出现在面试中的第一轮面试(我参加2011年腾讯研究院实习生招聘时就被问到了几个概念性题目)。然后是一些选择题,这些一般在笔试时出现,虽然不是太难,但如果在选择题上花费大多时间无疑会对后面的编程题造成影响,因此必须迅速的解决掉。最后是转载 2012-07-12 10:25:04 · 826 阅读 · 0 评论 -
秒杀多线程第二篇 多线程第一次亲密接触 CreateThread与_beginthreadex本质区别
本文将带领你与多线程作第一次亲密接触,并深入分析CreateThread与_beginthreadex的本质区别,相信阅读本文后你能轻松的使用多线程并能流畅准确的回答CreateThread与_beginthreadex到底有什么区别,在实际的编程中到底应该使用CreateThread还是_beginthreadex? 使用多线程其实是非常容易的,下面这个程序的主线程会创建了一个子线程转载 2012-07-12 10:26:46 · 1781 阅读 · 0 评论