- 博客(14)
- 收藏
- 关注
原创 移植sqlite-3.5.6到s3c2410上
pc机上要安装交叉编译环境(我安装的是arm-linux-gcc 3.4.1)把sqlite-3.5.6.tar.gz解压#tar -vzxf sqlite-3.5.6.tar.gz进入sqlite-3.5.6目录#cd sqlite-3.5.6创建sqlit
2011-08-10 16:52:47 1169
原创 Windows xp 下编译qt的mysql驱动
mysql 5.0.22版本qt-sdk-win-opensource-2010.02.1.exe以上软件我都是安装在D盘下,分别是:D:\mysql ,和D:\QT4 下面是编译的过程: 1. 使用reimp生成libmysql.a下载min
2011-07-04 16:51:39 1302 1
转载 关于默认构造函数的几个错误认识
假期间闲来无事,就下载了某大师的VC++视频资料。在讲到C++时,说是如果程序员没有自己定义默认构造函数,那么编译器会自动为我们产生一个默认的构造函数。 本来这个错误的认识很多程序员都有,不足为奇。但有这么多年编程经验的高手也有这样的错误认识就不禁让我哑然了。 其实编程语言和我们所用的任何软件没有区别,例如Photoshop、AutoCAD之类。其唯一不同的是我们用的
2011-06-18 17:23:00 363
转载 new和delete学习总结
<br />new和delete在C++中特别要重,在此简单总结一下new和delete各种含义。<br />new与operator new<br />C++中有很多语法让人难以理解,如:new operator(操作符,下同)和operator new之间差异,<br />确切的说,应该是new与operator new 的区别。<br />如下代码:<br />string *ps=new string("memory management");<br />这里所使用的new就是所谓new ope
2011-05-25 15:56:00 405
原创 Socket编程中的select多路复用
<br />Socket编程中的select多路复用<br />阻塞方式(block),顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,假如事件没有发生,进程或线程就被阻塞,函数不能立即返回。<br />非阻塞方式(non-block),就是进程或线程执行此函数时不必非要等待事件的发生,一旦执行肯定返回,以返回值的不同来反映函数的执行情况,假如事件发生则和阻塞方式相同,若事件没有发生则返回一个代码来告知事件未发生,而进程或线程继续执行,所以效率较高。<br /> <br />套接字相关函数
2011-05-21 18:26:00 2532
原创 Linux下基于socket多线程并发通信的实现
<br />/**************************************************** 文件名:pthread_server.c* 文件描述:创建子线程来接收客户端的数据***************************************************/#include <sys/types.h>#include <sys/socket.h>#include <stdio.h>#include <netinet/in.h>#
2011-05-21 18:13:00 11179 5
原创 arm-linux-gcc3.4.1环境变量的设置
<br />1.临时环境变量(关闭shell后就消失),用export命令<br />root@tong-desktop:~# export PATH=$PATH:/usr/local/arm/3.4.1/bin<br /><br />使用export命令查看<br />root@tong-desktop:~# export<br />declare -x COLORTERM="gnome-terminal"<br />declare -x DISPLAY=":0.0"<br />d
2011-05-21 17:49:00 953
原创 位逻辑运算符的用法
<br />1用法:掩码<br />“位与”运算符通常与掩码一起使用。掩码是某些位设为开(1)而某些位设为关(0)的位组合。假设定义符号常量MASK为2 ,即二进制的00000010,只有位1是非零。那么:<br />flags=flags&MASK;<br />这个语句将导致flags的除位1之外的所有位都被设为0,原因是它的任何位使用 &运算符与0组合都得0;位1将保持不变。因为掩码中的零覆盖了flags中相应的位,该过程称为“使用掩码”。<br />ch&=0xff; //该掩码留下ch的最后8位,将
2011-05-21 17:45:00 1395
原创 常见的指针问题
<br />1,所用的指针未初始化。<br />int main()<br />{<br /> static int *pointer;<br /> *pointer = 0;<br />}<br />尽管声明的是静态变量,从技术上讲已初始化为0,也就是NULL,但静态初始化并没有将指针初始化为有效的地址。因此,当程序运行时,变量pointer未包含有效的地址,程序就无法运行。下面为正确的程序:<br />int main()<br />{<br /> static int i;<br /> static
2011-05-21 17:43:00 416
原创 文件的输入输出函数
<br />1,FILE *fopen(char *filename,*type);<br />打开文件,如果成功地打开一个文件,fopen()函数返回文件指针,否则返回空指针(NULL)。<br /> <br />2,int fclose(FILE *stream);<br />关闭文件,当文件关闭成功时,返回0,否则返回一个非0值。<br /> <br />3,int fprintf(FILE *stream,char *format,<variable-list>);<br /><br />
2011-05-21 17:42:00 439
原创 Qt登陆窗口(查询数据库)
<br />数据库:Sqlite3<br /><br />数据库名:student<br />表名:student<br />表的结构:<br /><br /><br /><br />使用的工具是:SQLite Database Browser<br /> <br />注意:记得把创建的数据库文件student放到对应的目录(QT4.7是在login-build-desktop下)<br /> <br />新建工程login<br />跳到ui界面,放置QLabel和QViewTable两个组件<br />
2011-05-21 17:02:00 3896 2
原创 QTextBrowser的一些设置
<br />ui->textBrowser->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);//设置垂直滚动条不可见ui->textBrowser->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);//设置水平滚动条不可见<br /> <br />QTextCursor text_cursor(ui->textBrowser->textCursor());//设置光标的位置text_
2011-05-10 20:51:00 3875
原创 QLCDNumber显示系统时间及qss使用
<br />头文件widget.h<br />#ifndef WIDGET_H#define WIDGET_H#include <QtGui>class DigtalClock:public QLCDNumber{ Q_OBJECTpublic: explicit DigtalClock(QWidget *parent=0);private slots: void showtime();//显示时间};#endif<br /> <br /
2011-05-07 18:13:00 3472 2
原创 Qt数据库操作
整理一下QT操作数据库的一些要点,以备以后的查询学习(主要是操作mysql)。首先,要查询相关的驱动是否已经装好了,可以用以下的程序进行验证: #include#include#include#includeintmain(intargc,char*argv[]){ QCoreApplicationa(argc,argv); qDebug()结果如下:接着是连接数据库:#include
2011-05-05 15:32:00 6629 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人