C/C++
Xiamenguoke
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数组访问越界问题
最近在练习一个项目的时候经常遇到数组被corrupt的问题,在解决之后都发现是数组的访问越界。 现在发现的有两种情况,前越界和后越界。 前越界的情况: void DeleteChar(char *Buff) { int i = 0; i = strlen(Buff); if (i == 0)................................1 { return;原创 2012-03-30 22:00:09 · 868 阅读 · 0 评论 -
pushButton被hide之后。。(QT编程)
最近在学QT编程,写了个简单的推箱子游戏,debug的过程中一个问题困扰了我很久。。研究了很久,终于发现了原因,但是一些细节的东西还是不知道QT到底是怎么运行的。特记之,以备后续学习重温之用。 背景: 实现用方向键控制小人的运动,需要重新实现主窗口的keyPressEvent()函数。 问题: 玩第一关通过之后,会把原先存在的一个pushButton->show()出来提示按原创 2012-04-27 00:27:43 · 2977 阅读 · 0 评论 -
内存泄露之 glibc detected错误
一个小小的错误,害我浪费了半天时间。。 筒子们,不能用sizeof(结构体指针)啊。 虽然我深谙此理,可是还是由于粗心犯下了如此不可饶恕的错误。。 定义结构体时是这样的: typedef struct tagOnLineNode { int nId; int new_fd; struct sockaddr_in ClientAddr;//online client host原创 2012-06-03 15:40:14 · 1838 阅读 · 1 评论 -
static的一种用法
用static定义的变量直接用函数返回值赋值会怎么样呢? 我们都知道,static修饰的变量只被赋值一次,如果写成下面的形式: void test() { static int a = fun(); } int fun() { printf("heihei\n"); return 0; } int main() { while(1) { t原创 2012-10-26 20:52:07 · 1052 阅读 · 0 评论 -
linux进程状态D
dvr的配置 arm11 500m主频,256m内存,其中一半给了视频解码器。内核和其他的进程也占用了很多的内存,留给qt的可运行内存并不多。后来又把qt browser和qt webkit给移植到dvr上做地图展示。虽然裁剪掉了一部分功能,但是运行起来还是非常的卡,qt界面进程很容易进入状态D。然后卡在那里不动,要好一会儿才能缓冲过来。 在网络上了解状态D,是这么说的:申请io资源无法得到满足原创 2013-01-03 11:07:17 · 739 阅读 · 0 评论 -
C调用C++的方法
看了一下别人的文章,自己又整理了一下,贴上示例代码。 这是A.h #ifdef __cplusplus extern "C" { #endif int printf_cpp(); #ifdef __cplusplus } #endif 这是A.cpp #include using namespace std; extern "C" { int printf_cpp(void) {原创 2013-07-01 14:30:06 · 905 阅读 · 0 评论 -
ffmpeg在cygwin中的编译与链接
使用从网络上下载一个最新的 git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg 没有git就百度一下ffmpeg,到官方网页上去下载一个。 configure一下: ./configure --prefix=${INSTALL_PATH} --disable-yasm --cpu=i686 在cygwin中要运行很久,原创 2013-07-01 14:37:14 · 1081 阅读 · 0 评论 -
静态库的链接顺序
一个静态库若是调用了另外一个静态库的函数,在编译这个静态库的时候,只是会去找这个函数的声明,不会管这个函数是否有实现。所以在使用这个静态库的时候,得配合它所用的函数所在的静态库一起使用。 编译的时候找不到实现不会报错,但是链接的时候如果这个函数没有实现,则会报undefined错误。 静态库A源文件 int func_A() { func_B_in_lib_B(); } 此时原创 2013-07-01 14:45:16 · 3064 阅读 · 0 评论
分享