自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (1)
  • 收藏
  • 关注

原创 银河麒麟v10服务器版qt程序阻止系统关机的问题

qt想实现用户点击关机按钮无法关闭程序的功能,所以在closeEvent中进行了ignore,在windows下正常,在银河麒麟服务器版本下出现问题,导致银河麒麟系统无法正常关闭,关机按钮、重启按钮都失效。

2022-11-04 09:42:19 2160 1

原创 x86银河麒麟服务器版Qt无法实现透明窗口的问题

x86银河麒麟服务器版Qt无法实现透明窗口的问题

2022-10-31 14:04:01 1040

原创 Qt实现窗口置顶

Qt实现窗口置顶

2022-10-20 09:31:13 3042

原创 浮点数float保留小数和四舍五入问题

使用%.2f对float保留两位小数时,产生的结果和预期不同,8.245保留两位小数的结果是8.24,8.255保留两位小数的结果是8.26,这就很奇怪了,为什么不是四舍五入?其实仍然是四舍五入,根本问题是浮点数在计算机中不能精确表达,虽然我们期望的浮点数是8.245,但其实计算机中存储的是8.2449998856...;虽然我们期望的浮点数是8.255,但其实计算机中存储的是8.2550001144...。 这么看的话,就容易理解了8.2449998856...保留两位小数,第三位是4,所以..

2022-01-19 10:48:09 9072

原创 notepad批量转换文件编码utf8、gbk

从网上找了多个编码转换工具,自己也尝试写、从网上找python脚本,对文件进行批量转换,但转换结果都不理想,大部分文件都可以正常转换成UTF8,但少量文件转换后可能出现中文乱码的情况。经过多次尝试,发现使用notepad++程序进行编码转换,可以保证文件不乱码的情况下将文件转换为UTF8。Notepad++程序并未提供对外的编程接口,想控制该程序进行批量转换就需要使用其提供的Python Script插件,且只支持python2的写法。经过探索之后,将notepad++程序进行打包,大家可以直接

2021-12-29 10:50:38 10641 2

原创 Qt5中文编码问题解决办法

一、开发环境跨平台开发,开发环境为Windows和Linux。Windows(Win10)Qt:Qt5.15.2IDE:Microsoft Visual Studio Professional 2019 版本 16.11.5编译器:MSVC 19.29.30136 版,_MSC_VER为1929Linux(Centos 7.6)Qt:Qt5.15.2IDE:Qt Creator 5.0.3编译器:GCC 7.3.1二、现有代码需要做的修改VS2010+Qt4.8代码升

2021-12-28 16:51:28 4682 1

原创 TCP和UDP的区别

UDP是有边界的,应用层要整包地收,一次只能收一包,每次接收的要么是一个独立的完整的数据包,要么什么也接收不到。但是要注意传输的包大小有限制。TCP是无边界的,是字节流,需要应用层自己判断包边界,一次不一定能收几包,也不一定是完整的包,但是能保证收到的数据包是按顺序的、正确的且不重复的,被称为面向“连续字节流”的可靠的传输服务。TCP并不理解流所携带的数据内容,这个内容需要TCP连接双方的应用...

2019-02-15 15:54:13 241

原创 zabbix agent源码分析-----监控项key取值的实现

    zabbix的代码中有很多值得学习的地方,比如各种key值的获取,如果需要获取CPU、内存、网卡流量等设备状态值,可以参考zabbix的代码。    zabbix agent可以收集设备信息,从中可以找到各种采集信息的方法。我查看的是zabbix2.0.9的源码,寻找key对应的取值函数方法如下:    1、zabbix_agentd.c    main函数中:init_metrics()...

2018-04-25 10:08:35 1581

原创 qdebug重定向到日志文件

一、QT的调试输出主要有以下几种:    qDebug : 调试信息提示    qWarning: 一般的警告提示    qCritical: 严重错误提示    qFatal: 致命错误提示二、debug版的程序可以带着cmd窗口,供用户查看信息,但是release版本的时候不带cmd窗口,需要输出到日志中,但是程序中大量使用了qDebug,修改程序也比较麻烦,因此,在release版本的程序中...

2018-04-18 14:06:42 3603

原创 用Navicat自动生成SQL语句

    用MySql时,最头痛的莫过于写sql语句,用Navicat这个工具可以自动生成。使用如下:1、新建表语句,使用“SQL预览”功能    在Navicat中新建一张表,填上自己所需要的信息,如下图所示:    在点击保存之前,点击“SQL预览”,即可看到相应的建表语句:2、插入,更新操作,看Navicat的状态栏    在Navicat中执行想要的操作,在下...

2018-04-09 16:09:54 67721 1

原创 QEventDispatcherWin32::registerTimer: Failed to create a timer ()

    qt开发的界面程序,使用qwt显示曲线,每秒定时刷新,程序运行一段时间之后,程序会卡顿,再打开窗口会程序崩溃,运行vld查看内存泄漏情况,未发现有内存泄漏现象,但是程序就是运行卡顿,所以编译出debug版本,在cmd窗口下运行程序,长时间运行,发现崩溃的时候报的错误是QEventDispatcherWin32::registerTimer: Failed to create a timer...

2018-04-02 09:52:23 3781

原创 查看进程占用的句柄数

1、每个进程所能占用的句柄数是有上限的,如果程序打开文件、socket等,但是不关闭,并且频繁的做这样的操作,那么可能导致进程占用的句柄数超过显示,程序会异常崩溃,或产生打不开文件、socket的操作。2、linux下查看进程占用句柄数: ls -l /proc/进程ID/fd | wc -l3、win7查看占用句柄数:任务管理器--进程---查看--选择列,勾选句柄。则可见下图:...

2018-04-01 14:56:49 20047 1

原创 vs+qt设置程序运行时打开cmd窗口

为了方便调试,查看程序输出,可在程序运行同时打开cmd窗口,具体设置如下:    项目--属性--链接器--系统--子系统--控制台 (/SUBSYSTEM:CONSOLE)效果如下:不需要打开cmd的时候,设置为窗口 (/SUBSYSTEM:WINDOWS)即可。...

2018-03-14 20:09:36 4163 1

原创 qt读取配置文件中的中文

1、qt程序设置编码集 //程序字符集 QTextCodec *codec =QTextCodec::codecForName(“GBK”); QTextCodec::setCodecForCStrings(codec); QTextCodec::setCodecForTr(codec);2、配置文件的编码集也要是GBK。才能正确读取和显示中文。如果...

2018-03-13 16:17:56 2769

原创 QLineEdit响应回车时避免Button同时响应

在Dialog中有QLineEdit和QPushButton,发现lineEdit响应回车信号的时候,有一个按钮会同时响应点击事件。上网查询之后,得到解决办法:1、在designer中,找到QPushButton的autoDefault属性,将对勾去掉即可。2、代码修改 pButton->setAutoDefault(false);

2018-02-02 14:10:43 2991 2

原创 C++编码规范

一、命名规范    写代码第一件事,把命名规范好。我们领导说的很好:如果名字取得合适,每件事情都会自然地连贯起来,逻辑关系清楚、含义可以推测,使用人类常识根据这些名字进行的逻辑推理也能够与实际相符。可见命名的重要性。1、类名    所有单词首字母大写,其余小写。比如:MainWindow。结构的命名与类名的命名规则相同2、函数名    第一个单词首字母小写,其余单词首字母都大写

2017-10-13 09:23:26 363

原创 使用qt开发应用程序时,选择vs还是qtcreator?选择string还是qstring?

一、选择vs还是qtcreator参考链接:http://bbs.csdn.net/topics/390466219 一直有这个疑虑,使用qt开发桌面应用程序时,可以选择VS+qt,也可以选择qt creator。公司的老员工倾向于使用VS+qt,我个人因为之前没有用过vs,所以倾向于qt creator,查了一下这个问题,大家的意见如下:1、由MFC转Qt的还是VS的环境用起来

2017-10-12 20:17:45 16056 3

原创 C语言判断IPV4格式是否正确

因程序中需要判断IP格式,所以网上查询,使用sscanf可以实现类似正则表达式的效果,sscanf的使用比较复杂,用好了能实现很复杂的效果,现在仅整理判断IP格式的代码,以后有需要判断字符串格式了,再查询更多的用法,现在仅记录判断IP格式的代码。#include #include #define TRUE 1#define FALSE 0int isIpV4Addr(const c

2017-10-09 14:47:00 2415

原创 linux下的文件名和路径的长度限制

因为在C程序中需要用一个字符串去存储文件的绝对路径,这个字符串的空间应该是根据实际需要malloc的空间,如果实际应用中是自己拼凑的有格式的文件名,那么大概可以预知大小,要是无法预知,就先事先知道linux系统对文件名和路径的长度限制。    获得方式为:         由于文件名和路径名限制实际上是有文件系统有关系的,所以要用pathconf函数。或者用getconf命令.比如: 

2017-09-30 09:08:43 5612

原创 C语言实现字符串切片

因要用C语言实现读取配置文件,配置文件中字符串以逗号分隔,所以要根据索引获取到相应位置的字符串,也要能根据字符串获取在一串字符中的索引,代码记录如下:#include #include int findSubstringIndexSplitByComma(const char *pSrc, const char *pDst); int findSubstringIndexSplitBy

2017-09-27 15:11:49 12840

原创 C语言中的'\0',0,NULL,'0'等

计算机存储字符的时候都是存储的该字符的ASCII码值,所以‘\0’存储在计算机就是0x00,数字0也是0x00,NULL也是0x00。这三个存储的本质是一样的,但是为了更好的区分,应用场景不太相同。字符时用‘\0’,指针是用NULL,0x00很少见,一般直接用0代替,这三个本身是一个东西。    至于‘0’,就是字符0的ASCII了,查一下ASCII可知,实际存储时那个内存地址的值是48,即0

2017-09-27 13:13:36 1668

原创 c语言函数如何获取传入的数组(指针)的指针所指向内容的长度

C语言直接操作底层,指针操作不当很容易发生越界或者溢出。一直困扰指针指向的内容的长度判断,现在参考网上的答案,整理如下:1、指针只给出了两种信息:所指向数据的类型和地址 。而根据两者你是无法判断该数据的地址范围的。2、指针本身完全没有携带长度信息。你能够通过 sizeof 获取数组的长度是因为:编译器在将 C 代码转换成汇编代码时,自动将其替换成了实际的数值。3、传进来的东西及其上下文

2017-09-27 12:17:06 12757 2

原创 size_t类型

ssize_t是signed size_t,而size_t是标准C库中定义的,应为unsigned int。在32位系统上 定义为 unsigned int 也就是说在32位系统上是32位无符号整形在64位系统上 定义为 unsigned long 也就是说在64位系统上是64位无符号整形size_t一般用来表示一种计数,比如有多少东西被拷贝等。例如

2017-09-27 11:32:09 439

原创 pycharm中将tab键设置成4个空格

file->setting->Editor->python

2017-08-28 09:42:28 15234

原创 C语言--二维数组的使用

今天使用二维数组,纠结使用固定大小还是动态分配内存。动态分配内存不熟练,总倾向于分配固定大小的内存,这样不好。所以把两种都实现一下。1、固定大小的数组#include #define ROW 5#define COLUMN 6void main(void){ int i = 0; int j = 0; int int_array[ROW][COLUMN]

2017-08-11 20:59:24 765

原创 linux 清除 arp 缓存

转载自:http://blog.csdn.net/u011641885/article/details/48175239所有在Linux系统下 arp -d $ip 命令只能清除一个IP地址的对应MAC地址缓存,可以使用组合命令操作。组合命令清楚所有arp缓存:arp -n|awk '/^[1-9]/{system("arp -d "$1)}'  以上命令必须 root 才可以执行

2017-08-09 11:10:02 5718

原创 zabbix_server代码分析--多进程创建

以上为zabbix_server中创建多个进程部分的代码。

2017-08-01 11:33:27 778

java4android学习笔记(2-54全)(mars)

java4android全套学习笔记,方便个人学习使用。

2015-12-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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