• 摘要视图
  • 目录视图

各种编程相关

Windows 核心编程 学习笔记 (第二部分)

目录

8. 进程

  • 进程定义
  • Windows支持两种类型的应用程序
  • Windows应用程序的入口地址

9. WinMain\wWinMain函数

  • 进程的实例句柄
  • 命令行

10. 进程的环境变量

11. 进程的错误模式

12. 操作系统的版本[……]

>> 阅读全文…

Windows 核心编程 学习笔记 (第一部分)

目录

1. 错误处理

  •     Windows函数常见返回类型
  •     每个错误的三种表示法
  •     错误的内部机制
  •     错误代码转化为英文描述
  •     自定义错误代码

2. Unicode

STL deque容器不支持通过指针偏移读取元素(cplusplus.com意见反馈)

问题反馈过程

http://www.cplusplus.com 是介绍标准c++语言的一个权威网站,在其对deque容器的介绍中,有这样一句(反馈后现已更改):

But, unlike vectors, deques are not guaranteed to store all its elem[……]

>> 阅读全文…

Python中一个正整数和一个负整数相除问题(易错点)

针对Python 2.7 版本,Python3 中不存在该问题

下面这段代码输出结果是什么?

a = 1
b = -2
c = a / b
print c
print int(c)
print int(-0.5)

输出结果为:-1, -1, 0

如果是在C++中

int a = 1;
int[......]

>> 阅读全文...

类对象数组的初始化与赋值(易错点)

下述代码中声明类Example对象的数组e[2],然后新建了Example(1)对象并赋值给e[0]。通过这种方式设置类对象数组,称为赋值,而不是初始化。

这个过程实际上赋值过程,存在临时对象Example(1)的构造和析构。而通过类对象数组初始化就不存在生成临时对象这一过程。先看类对象数组声明和赋[……]

>> 阅读全文…

C++实现通过基类指针调用子类的私有函数(易错点)

请看下面的例子,它成功调用了类的私有成员函数。

[cpp]//鸟,可以飞
class Bird {
public:
virtual void fly(){cout<<"Bird fly"<<endl;};
};

//鸵鸟,是鸟,但不可[……]

>> 阅读全文…

Windows下sqlite3的编译使用总结

方法一 源码加入项目,直接使用

1. 下载 sqlite-amalgamation-3080401.zip 源码包

这是一个源代码的合并包,sqlite3源代码的所有文件都被合并成了一个sqlite3.c文件

2. 解压源码包

解压目录包括四个文件

  1. (1) sqlite3[……]

    >> 阅读全文…

C++中public,protected,private访问(转)

注:本想自己写一点笔记,但是发现了下面这篇文章已经总结的很好,就转过来了珍藏吧。

转自: 网易博客 – 好记性不如烂笔头—Leo – C++中public,protected,private访问

————————————————[……]

>> 阅读全文…

绕中心点顺序旋转的n*n数组

问题

给定一个n,n为奇数,求一个n*n的二维数组,1 位于数组的中心,其它数绕中心点依次旋转并递增,如n=5时,数组如下:

21 22 23 24 25
20  7  8  9 10
19  6  1  2 11
18  5  4  3 12
17 16 15 14 13

思路

示意图.jpg[……]

>> 阅读全文…

沿45°递增的n*n数组

问题

给定一个n,求一个n*n的二维数组,该数组的值沿45°方向的斜线依次递增。如n=4时,数组为

  1   2   4   7
  3   5   8  11
  6   9  12  14
 10  13  15  16

思路

将数组分成上三角(包括对角线)和下对角两个部分分别计[……]

>> 阅读全文…

类型转换:char / char*/ int

char 转 int

char类型的数字 ‘0’  –  ‘9’,转化为 int类型的数字0 – 9

//方法:通过 -'0' 实现
char ch='9';
int n = ch - '0';

char类型直接转int时,int型变量的值[……]

>> 阅读全文…

不用if比较两个数 (笔记)

不使用if,?,switch,比较两个数a 和 b,返回其中较大的数。

//方法1:取平均值法
return ((a+b)+abs(a-b))/2;  //较大
//return ((a+b)-abs(a-b))/2;//较小

//方法2:数组法
int arr[2] = {a,b};
retur[......]

>> 阅读全文...

不使用第三个变量的交换两个数 (笔记)

[cpp]typedef int SWAP_TYPE; 

//交换两个数,不使用第三个变量 
void swap(int &a,int &b,SWAP_TYPE type) 

    switch(type) 
    { 
    case 1: [……]

>> 阅读全文…

Python多线程和线程同步

Python中提供了两个实现多线程的模块,一个是底层(low-level)的thread模块,一个是高层(high-level)的threading. 两者都可实现多线程,thread模块使用的是低级的原语,threading模块基于thread模块,提供了高层的API,更简单易用,所以推荐使用th[……]

>> 阅读全文…

(网摘)py\pyc\pyo\pyd 的区别以及pythonw

pythonw.exe 和 python.exe

使用python.exe 执行脚本时会出现黑窗口,使用pythonw.exe执行脚本时则不会出现。

比如在某些Python IDE中,如果解释器使用python.exe则每次执行时会弹出python脚本运行的黑窗口,使用pythonw.exe[……]

>> 阅读全文…