- 博客(188)
- 资源 (11)
- 收藏
- 关注
转载 Python:使用ctypes库调用外部DLL
Python:使用ctypes库调用外部DLL前言朋友的公司是做GPS的,上周联系到我要帮做个程序把他们平台的车辆定位跟踪数据和省里的平台对接。看一下官方提供的三个文档,洋洋洒洒共一百多页,一大堆协议的定义甚是齐全,好在官方的文件中也带有个封装好通信功能的DLL和一个调用此接口的c++ DEMO程序,既然有现成的可用,那就不必去看他的协议了。说实话,参加工作之后就基
2015-05-18 23:46:54 801
转载 ctypes 使用方法与说明
ctypes 使用方法与说明1, 首先确定你的python支持不支持ctypes python2.7以后ctypes已经是标配了,2.4以后的版本得自己装下ctypes2,加载动态库 两种加载方式 >>> from ctypes import * >>> libc = cdll . LoadLibrary (
2015-05-18 23:31:48 957
转载 如何手动删除并重新安装 .NET Framework 2.0
如何手动删除并重新安装 .NET Framework 2.0本文可能包含一个指向 Windows 安装程序清理实用程序 (MSICUU2.exe) 的链接。如果被定向到本文使用 Windows 安装程序清理实用程序来解决问题,请联系软件制造商以寻求该产品的安装支持。或者,参阅下列 Microsoft 知识库文章,以获取
2015-04-01 23:37:07 15314 1
转载 卸载VS2008后重新安装VS2005的苦难历程
卸载VS2008后重新安装VS2005的苦难历程之前骚包了一下,花了一天的时间下载并安装了VS2008,发觉除了加入一些新的特性之外,没有其他特别吸引人的地方。刚好也没怎么用到,又占用空间,算了,卸之。在安装VS2008的时候,就提示,VS2005可能需要重装,当初也没在意。(其实,卸载完VS2008的时候,VS2005也是可以用的,只是不放心。)为了洗心革面,防止出现一些
2015-04-01 23:36:44 677
转载 卸载VS2005不完全出现的安装问题
卸载VS2005不完全出现的安装问题 使用微软自带的程序安装卸载工具有时候无法完全卸载VS2005,导致想重新安装VS2005时提示“此计算机上已安装了试用版本。必须先卸载以前安装的试用版本后才能安装另一个试用版”。此时可以下载专用工具“VS2005卸载工具”进行彻底删除,此具工在本人的博客资源中有下载。如果这样彻底删除后还不能安装,则可以进入注册表,找到如下注册键,把它删除:
2015-04-01 23:35:55 1045
转载 当VS2005卸载不干净时
当VS2005卸载不干净时 那个恶心……当手动删除一部分文件(也许这部分文件中包括了卸载程序)后,再调用win的卸载程序或360的软件卸载来卸载VS2005,答案是……没办法卸载干净的。想想也是必然的,没了对应的卸载程序当然会卸载不了对应那部分信息,然而再次安装时安装程序首先检测注册表中有没有对应的安装信息,假如检测到有,那你挂了,安装程序自动屏蔽掉已经有注册信息的一部分,只安装被正常卸
2015-04-01 23:34:42 2139
转载 VS2005-此计算机上已安装了试用版。必须先卸载以前安装的试用版后才能安装另一个试用版
VS2005-此计算机上已安装了试用版。必须先卸载以前安装的试用版后才能安装另一个试用版 以前安装过vs 2005后来安了2008,2005删了,现在项目需要2005,再准备安上,安的时候提示“此计算机上已安装了试用版。必须先卸载以前安装的试用版后才能安装另一个试用版” 解决办法:删除 HKEY_LOCAL_MACHINE\SOFTWARE\M
2015-04-01 23:34:33 818
转载 VS2005-此计算机下已安装了试用版,必须先卸载以前安装的试用版后才能安装另一个试用版
VS2005-此计算机下已安装了试用版,必须先卸载以前安装的试用版后才能安装另一个试用版VS2005-此计算机上已安装了试用版,必须先卸载以前安装的试用版后才能安装另一个试用版。VS2005-此计算机上已安装了试用版,必须先卸载以前安装的试用版后才能安装另一个试用版。 在网上查的解决方法:删除 HKEY_LOCAL_MACHINE\SOFTWARE\Micros
2015-04-01 23:33:17 566
转载 C/C++位域知识小结
C/C++位域知识小结几篇较全面的位域相关的文章:http://www.uplook.cn/blog/9/93362/C/C++位域(Bit-fields)之我见C中的位域与大小端问题内存对齐全攻略–涉及位域的内存对齐原则本文主要对位域相关知识进行了一下梳理,参考如下:C语言中的位域史上最全的C位域总结2C结构体之位域(位段) C/C++
2015-03-22 23:26:19 531
转载 C++随记总结(1)----关于C++中的大小端、位段(惑位域)和内存对齐
C++随记总结(1)----关于C++中的大小端、位段(惑位域)和内存对齐 声明:欢迎任何人和组织转载本blog中文章,但必须标记文章原始链接和作者信息。本文链接:http://www.cnblogs.com/leezhm/archive/2011/07/19/2110864.html开拓进取的小乌龟------->cnBlogs 点滴点点滴滴
2015-03-22 23:24:59 525
转载 关于C++ 中大小端和位域
关于C++中的大小端、位段(惑位域)和内存对齐 听到好几个朋友说到去一些公司做面试,总是遇到关于大小端、位段(或者叫位域)和内存对齐的考题,然后就不知所措了。虽然我认为很多开发根本就用不到这个,但是我认为很有必要学习理解这些知识点,因为它可以让你更了解C++的,了解程序在内存的运行情况,也能加深对计算机系统的理解。 声明:由于本文的代码会受到计算机环境的
2015-03-22 23:22:03 1547
转载 C结构体之位域(位段)
C结构体之位域(位段)有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种数据结构,称为“位域”或“位段”。所谓“位域”是把一个字节中的二进位划分为几个不同的区域, 并说明每个区域的位数。每个域有一个域名,允许在程序中按域名
2015-03-22 23:20:24 459
转载 结构体之位域(位段)
结构体之位域(位段)有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种数据结构,称为“位域”或“位段”。所谓“位域”是把一个字节中的二进位划分为几个不同的区域, 并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。 这
2015-03-22 23:20:02 421
转载 大小端 位域
大小端 位域 针对内核IP头version 和 ihl在大小端异位的一些介绍:http://www.unixresources.net/linux/clf/program/archive/00/00/64/28/642822.html version先定义的,应该在高位啊,即most significant 4 bits。 可以这样来解释, 1)
2015-03-22 23:18:48 458
转载 关于大小端、位域的一些概念详解
关于大小端、位域的一些概念详解我们常用的x86结构都是小端模式,而大部分DSP,ARM也是小端模式,不过有些ARM是可以选择大小端模式。所以对于上面的maxHeight是应该以小端模式来存放,具体情况请看下面两表大小端:对于像C++中的char这样的数据类型,它本身就是占用一个字节的大小,不会产生什么问题。但是当数制类型为int,在32bit的系统中
2015-03-22 23:18:07 585
转载 位域(Bit-fields)分析
位域(Bit-fields)分析 位域是c++和c里面都有的一个概念,但是位域有一点要注意的有很多问题我们一样样的看:一、大端和小端字节序实际就是起始点该怎么确定。先看一个程序: 1: union { 2: struct 3: { 4: unsigned char a1:2;
2015-03-22 23:15:48 1134
转载 Endianness
Endianness(本文章转载于维基百科)From Wikipedia, the free encyclopedia (Redirected from Endianess)The terms endian and endianness refer to the convention used to interpret the bytes maki
2015-03-22 22:56:48 891
转载 位结构体+大小端模式
位结构体+大小端模式位结构是一种特殊的结构, 在需按位访问一个字节或字的多个位时, 位结构比按位运算符更加方便 位结构定义的一般形式为: struct 位结构名{ 数据类型 [变量名]: 整型常数; 数据类型 [变量名]: 整型常数; }位结构变量;数据类型必须是整型(int char short)例如:定义一个位结构 struct test{
2015-03-22 22:50:30 1245
转载 编程小技巧
编程小技巧代码中常用的宏:#define MIN(a, b)(((a)#define MAX(a, b)(((a)>(b))?(a):(b))#define ROUNDUP(x,y) ((((ulong)(x)+((y)-1))/(y))*(y))#define ISALIGNED(a,x)
2015-03-22 19:50:16 430
转载 位域的使用
位域的使用有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态,用一位二进位即可。为了节省存储空间,并使处理简便,C语言提供了一种数据结构,称为“位域”或“位段”。所谓“位域”是把一个类型单元中的二进位划分为几个不同的区域, 并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。 这样就可以达到压缩数
2015-03-22 19:49:58 517
转载 地址空间
最近搞驱动开发,接触到了地址空间这个概念。这个题目比较大,慢慢整理。CPU地址空间I/O地址空间I/O作为CPU和外设交流的一个渠道,主要分为两种,一种是Port I/O,一种是MMIO(Memory mapping I/O)。前者就是我们常说的I/O端口,它实际上的应该被称为I/O地址空间。对于x86架构来说,通过IN/OUT指令访
2015-03-22 19:48:48 361
转载 C中的位域与大小端问题
C中的位域与大小端问题字节内也是有大小端问题,与字节中的大小端类似:1)little endian中的位应该这样排列: 01234567 即排在前面的是低位。因此,先分配least significant bits 2)而在Big endian中,位应该这样排列: 76543210 即排在前面的是高位。因此,先分配most significant bits。
2015-03-22 19:30:00 716
转载 python 多线程就这么简单(续)
python 多线程就这么简单(续) 之前讲了多线程的一篇博客,感觉讲的意犹未尽,其实,多线程非常有意思。因为我们在使用电脑的过程中无时无刻都在多进程和多线程。我们可以接着之前的例子继续讲。请先看我的上一篇博客。python 多线程就这么简单 从上面例子中发现线程的创建是颇为麻烦的,每创建一个线程都需要创建一个tx(t1、t2、...),如果创建的线程多时候这样
2015-02-09 00:42:42 413
转载 在做自动化测试之前你需要知道的
在做自动化测试之前你需要知道的 什么是自动化测? 做测试好几年了,真正学习和实践自动化测试一年,自我感觉这一个年中收获许多。一直想动笔写一篇文章分享自动化测试实践中的一些经验。终于决定花点时间来做这件事儿。 首先理清自动化测试的概念,广义上来讲,自动化包括一切通过工具(程序)的方式来代替或辅助手工测试的行为都可以看做自动化,包括性能测试工具(loadrunner、jm
2015-02-09 00:41:45 572
转载 python 多线程就这么简单
python 多线程就这么简单 多线程和多进程是什么自行google补脑 对于python 多线程的理解,我花了很长时间,搜索的大部份文章都不够通俗易懂。所以,这里力图用简单的例子,让你对多线程有个初步的认识。 单线程 在好些年前的MS-DOS时代,操作系统处理问题都是单任务的,我想做听音乐和看电影两件事儿,那么一定要先排一下顺序。(好吧!我们不
2015-02-09 00:40:50 529
转载 python 多线程应用
python 多线程应用python可以方便地支持多线程。可以快速创建线程、互斥锁、信号量等等元素,支持线程读写同步互斥。美中不足的是,python的运行在python 虚拟机上,创建的多线程可能是虚拟的线程,需要由python虚拟机来轮询调度,这大大降低了python多线程的可用性。我们经今天用了经典的生产者和消费者的问题来说明下python的多线程的运用 上代码
2015-02-09 00:39:40 413
转载 Python多线程学习
Python多线程学习 一、Python中的线程使用: Python中使用线程有两种方式:函数或者用类来包装线程对象。1、 函数式:调用thread模块中的start_new_thread()函数来产生新线程。如下例: import time import thread def timer(no, interval): cnt = 0
2015-02-09 00:38:30 403
转载 Python中多线程thread与threading的实现方法
Python中多线程thread与threading的实现方法这篇文章主要介绍了Python中多线程thread与threading的实现方法,很重要的应用,需要的朋友可以参考下学过Python的人应该都知道,Python是支持多线程的,并且是native的线程。本文主要是通过thread和threading这两个模块来实现多线程的。python的t
2015-02-09 00:28:15 1415
转载 Python多线程编程
Python多线程编程运行几个线程和同时运行几个不同的程序类似,它有以下好处: 一个进程内的多个线程和主线程分享相同的数据空间,比分开不同的过程更容易分享信息或者彼此通信。 线程有时叫做轻量化过程,而且他们不要求更多的内存开支;它们比过程便宜。一个线程的顺序是:启动,执行和停止。有一个指令指针跟踪线程正在运行的上下文在哪里。 它可以被抢占(中断) 它能暂
2015-02-09 00:27:20 383
转载 Python实战之子进程
Python实战之子进程最近做一个小工具需要用到Python的字进程,看了一下Python的API,subprocess模块可以就可以实现,并且还挺简单要实现一个简单的自进程,只需要[python] view plaincopyprint?import sys, os, subprocess p = subprocess
2015-02-09 00:25:16 467
转载 Python实战之多线程编程thread模块
Python实战之多线程编程thread模块在Python中除了可以通过继承threading.Thread类来实现多线程外,也可以调用thread模块中的start_new_thread()函数来产生新的线程,如下[python] view plaincopyprint?import time, thread def ti
2015-02-09 00:24:39 392
转载 Python实战之多线程编程threading.Thread
Python实战之多线程编程threading.Thread在Python中可以使用继承threading.Thread类来实现多线程编程,其中子类可以重写父类的__init__和run方法来实现用户线程的逻辑,如下是一个简单的多线程类实现[python] view plaincopyprint?import threading
2015-02-09 00:23:34 417
转载 多线程编程(3): 使用互斥锁同步线程
python多线程编程(3): 使用互斥锁同步线程问题的提出上一节的例子中,每个线程互相独立,相互之间没有任何关系。现在假设这样一个例子:有一个全局的计数num,每个线程获取这个全局的计数,根据num进行一些处理,然后将num加1。很容易写出这样的代码:# encoding: UTF-8import threadingimport timeclass MyT
2015-02-09 00:21:55 503
转载 多线程编程(2): 线程的创建、启动、挂起和退出
python多线程编程(2): 线程的创建、启动、挂起和退出如上一节,python的threading.Thread类有一个run方法,用于定义线程的功能函数,可以在自己的线程类中覆盖该方法。而创建自己的线程实例后,通过Thread类的start方法,可以启动该线程,交给python虚拟机进行调度,当该线程获得执行的机会时,就会调用run方法执行线程。让我们开始第一个例子:
2015-02-09 00:20:47 639
转载 多线程编程(1): python对多线程的支持
python多线程编程(1): python对多线程的支持前面介绍过多线程的基本概念,理解了这些基本概念,掌握python多线程编程就比较容易了。在开始之前,首先要了解一下python对多线程的支持。虚拟机层面Python虚拟机使用GIL(Global Interpreter Lock,全局解释器锁)来互斥线程对共享资源的访问,暂时无法利用多处理器的优势。语
2015-02-09 00:18:23 373
转载 多线程的基本概念
多线程的基本概念多线程编程必须理解的一些基本概念,适用于所有编程语言。内容:并发式编程多任务操作系统多线程vs多进程线程安全线程的生命周期线程的类型并发式编程不同的编程范式对软件有不同的视角。并发式编程将软件看做任务和资源的组合——任务之间竞争和共享资源,当资源满足时执行任务,否则等待资源。并发式编程使得软件易于理解和重用,在某些场景
2015-02-09 00:15:39 366
转载 python学习笔记——多线程编程
python学习笔记——多线程编程 基础不必多讲,还是直接进入python。 Python代码代码的执行由python虚拟机(也叫解释器主循环)来控制。Python在设计之初就考虑到要在主循环中,同时只有一个线程在执行,就像单CPU的系统中运行多个进程那样,内存中可以存放多个程序,但任意时候,只有一个程序在CPU中运行。同样,虽然python解释器可以“运
2015-02-09 00:09:39 377
转载 圈复杂度
圈复杂度文章是转来的,刚好今天公司同事给我们分享了这方面的一些资料,其中用到的例子就是文字最后的那个例子。但是例子中的代码用SourceMonitor计算圈复杂度确实7。有朋友知道缘由可以分析下的。话说不同公司对圈复杂度的要求也有不一样的,比如有的公司把switch语句作一个圈复杂度,而有的却是安装case的个数来计算的。不过重要的是要有意识的减少自己代码的圈复杂度,毕竟你
2015-02-02 23:55:36 605
转载 复杂度及圈复杂介绍介绍
软件复杂度衡量方法有许多种:对于软件复杂度最著名的可能就是Tom McCabe的方法了。该方法通过计算子程序中的“决策点(decision points)”的数量来衡量复杂度。圈复杂度用来评价代码复杂度,以函数为单位,数值越大表示代码的逻辑分支越多,理解起来也更复杂。圈复杂度可以成为编码及重构的重要参考指标,以指导撰写可读性高的代码。有关圈复杂度的定义,可以自行搜索。《代码大全》有
2015-02-02 23:45:22 1435
转载 控制流图|圈复杂度|基本复杂度
控制流图|圈复杂度|基本复杂度控制流图是McCabe复杂度计算的基础,McCabe度量标准是将软件的流程图转化为有向图,然后以图论的知识和计算方法来衡量软件的质量。McCabe复杂度包括圈复杂度(Cyclomatic complexity)、基本复杂度、模块涉及复杂度、设计复杂度和集成复杂度等。控制流程图分析是一个静态的分析过程,它提供静态的度量标准技术,一般主要运用在白盒测试的方法中。
2015-02-02 23:43:16 9982
clonedigger
2014-12-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人