自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(82)
  • 资源 (35)
  • 收藏
  • 关注

原创 数据类型转换 符号扩展

================         =   关于符号扩展 =            ===================一、短数据类型扩展为长数据类型1、要扩展的短数据类型为有符号数的      进行符号扩展,即短数据类型的符号位填充到长数据类型的高字节位(即比短数据类型多出的那一部分),保证扩展后的数值大小不变如1:char x=10001001b;

2012-08-18 14:07:00 2297

原创 VC中如何使非模态对话框不随主窗口最小化

CLoadKeyDlg *dlg = new CLoadKeyDlg;dlg->Create(IDD_LOADKEY_DLG, this );dlg->showWindow(SW_NORMAL); this->ShowWindow(SW_HIDE); // 隐藏主窗口只需把第二句  this 改成 桌面窗口 即可dlg->Create(IDD_LOADKEY

2012-08-13 21:44:14 1566

转载 详解linux下的串口通讯开发

串行口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使用。常用的串口是RS-232-C接口(又称EIA RS-232-C)它是在1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。串口通讯指的是计算机依次以位(bit)为单位来传送数据,串行通讯使用的范围很广,在嵌入式系统开发过程中串口通讯也经常用到通讯方式之一。L

2012-07-30 23:40:54 1597

转载 决不应该调用CreateThread

在写c++代码时,一直牢记着一句话:决不应该调用CreateThread。相反,应该使用Visual   C++运行期库函数_beginthreadex。好像CreateThread函数就是老虎,既然这样为什么微软要开发这个函数呢?从网上找到的相关资料,现在汇总一下,在此对相关人员进行感谢! 摘自《windows   核心编程》:        CreateThread函数是用

2012-07-09 00:20:12 2317

转载 CreateThread, AfxBeginThread,_beginthread, _beginthreadex的区别

CreateThread 是Windows的API函数(SDK函数的标准形式,直截了当的创建方式,任何场合都可以使用),提供操作系统级别的创建线程的操作,且仅限于工作者线程。不调用MFC和RTL的函数时,可以用CreateThread,其它情况不要轻易。在使用的过程中要考虑到进程的同步与互斥的关系(防止死锁)。线程函数定义为:DWORD WINAPI _yourThreadFun(LPVOID p

2012-07-07 18:54:36 625

转载 setjmp.h setjmp/longjmp

setjmp.h是C标准函数库中提供“非本地跳转”的头文件:控制流偏离了通常的子程序调用与返回序列。互补的两个函数setjmp与longjmp提供了这种功能。setjmp/longjmp的典型用途是例外处理机制的实现:利用longjmp恢复程序或线程的状态,甚至可以跳过栈中多层的函数调用。成员函数int setjmp(jmp_buf env)建立本地的jmp_buf缓冲

2012-06-30 14:35:26 751

原创 VC6 提示内存不足

1、插入 dsp 文件提示内存不足,2、使用VC中,非法关机后重新打开工程提示内存不足3、等等。 解决方法是 : 删除clw文件后打开VC工程即可(打开VC工程后它会自动提示没有找到类信息,询问是否加载,点确定就可以重新生成CLW文件)。

2012-06-28 15:25:56 1922

原创 Windows编程的剪贴板机制

Windows剪贴板    Windows剪贴板是一种比较简单同时也是开销比较小的IPC(IntERProcess Communication,进程间通讯)机制。Windows系统支持剪贴板IPC的基本机制是由系统预留的一块全局共享内存,用来暂存在各进程间进行交换的数据:提供数据的进程创建一个全局内存块,并将要传送的数据移到或复制到该内存块;接受数据的进程(也可以是提供数据的进程本身)获取

2012-06-27 21:59:34 897

原创 闲来无事 练习基础知识

1、创建进程:  STARTUPINFO si ; si.cb = sizeof(si); memset(&si,0,sizeof(si)); PROCESS_INFORMATION pi; si.wShowWindow = TRUE; BOOL bRet = CreateProcess(NULL,"notepad.exe",NUL

2012-06-21 00:36:58 1108 1

原创 获取时间

1、time_t   长整型语法定义: typedef long time_t; /* time value */2  、 time语法: #include time_t time( time_t *time );功能: 函数返回当前时间,如果发生错误返回零。如果给定参数time ,那么当前时间存储到参

2012-06-19 00:31:01 740

原创 用" #include<absacc.h> “ 即可使用其中定义的宏来访问绝对地址

当51单片机通过8255和锁存器74LS273来扩展IO时,经常用到头文件absacc.h。在程序中,用“#include”即可使用其中定义的宏来访问绝对地址,包括:CBYTE、XBYTE、PWORD、DBYTE、CWORD、XWORD、PBYTE、DWORD例如:rval=CBYTE[0x0002];指向程序存贮器的0002h地址rval=XWORD [0x0002];指向外

2012-06-09 17:33:31 6387 1

原创 计算机基础部分 数据转换 移位问题

unsigned long i;  /* unsigned long 类型为4字节*/char c1=0xa4;char c2=0x31;i = c2问:i =          (用16进制格式)    如果:unsigned long i; /* unsigned long 类型为4字节*/char c1=0x74;char c2=0x31;i = c2

2012-06-08 15:18:42 910

转载 学习使用autotools

转载地址 :点击打开链接 1、准备:     需要工具autoscan aclocal autoheader automake autoconf make 等工具.  2、测试程序编写:     建立目录:mkdir include src     编写程序:include/str.h #include int str(char *string);

2012-06-04 00:10:17 565

转载 在Ubuntu中安装工具Autotools

autotools是个系列工具,首先确认你的系统是否安装了以下工具(可以通过which命令查看):    aclocal    autoscan    autoconf    autoheader    automake 安装方法:lin@lenovo:~$ sudo apt-get install autoconf  显示如下:         正

2012-06-03 22:52:25 1557

转载 VC中的一些常用方法(20条)

//一、打开CD-ROMmciSendString(“Set cdAudio door open wait”,NULL,0,NULL);//二、关闭CD_ROMmciSendString(“Set cdAudio door closed wait”,NULL,0,NULL);//三、关闭计算机OSVERSIONINFO OsVersionInfo; //包含操作系统版本信息的数

2012-05-31 22:31:33 1044

转载 XFS文件系统结构分析-XFS数据恢复篇

XFS是一个高效的64位文件系统,由SGI开发,原用在IRIX中,后移植到LINUX上,由于SGI出身于图形多媒体设计,所以其文件系统具在很强的对大量数据的处理能力,在处理大量文件、节点时性能下降很低,完全领先于EXT3,并与REISERFS有的一拼。现在许多基于LINUX和FREEBSD的NAS(由于LINUX/FREEBSD的开源性,实际上非LINUX/FREEBSD的NAS只占很少一部分)选

2012-05-29 23:10:30 6887

转载 WOSA/XFS结构、背景等介绍

前言:        写给ATM硬件和软件人员的无言歌。        希望对工作有所帮助,能够少花些时间在解决相关问题上,多些时间做自己喜欢做的事情。        一定意义上来讲,任何ATM从业人员都应该看下这篇文章。正文:        随着符合WOSA/XFS规范的跨平台ATMC软件日益铺开,确实有很多人需要稍微深入的知道一些相关概念,但没有这样的文章来介绍,并

2012-05-29 23:08:13 2046

转载 WOSA\XFS简单介绍

WOSA(全称是Windows开放式系统体系结构 Windows Open System Architecture),是微软公司提出的一种在Windows操作系统下的软件架构。WOSA/XFS是基于WOSA的扩展金融服务(Window Open System Architecture/ Extensions for Financial Services),是微软公司为全球金融行业软件提出的一种

2012-05-29 23:06:39 1313

原创 ubuntu 环境变量配置

环境变量有两种:用户环境( /etc/profile )  和  系统环境( /etc/environment )  一、用户命令:sudo gedit /etc/profile接着在打开的文件的最后输入:代码:#set java envivonmentexport JAVA_HOME=/home/****/jdk1.6.0_16export CLASSPATH=$CLAS

2012-05-29 00:16:33 628

原创 C++ 学习(初级篇)

==================          第一部分    ==============================#include //////////////////////////////////////////////////////////////////////////// 基类(父类)class Animal{public: Animal(

2012-05-28 00:21:39 901 2

原创 Gvim常用命令

Vim常用命令光标移动:w    :光标以单词向前移动 nw:光标向前移动n个单词 光标到单词的第一个字母上b    :与w相反^    :移动光标到行首第一个非空字符上去$    :移动光标到行尾第一个非空字符上去%    :移动到与制匹配的括号上去(),{},[],nG    :跳转到第n行。可视模式v        :可视模式V        :选择行

2012-05-20 01:47:50 1076

原创 字符编码转换_进制转换(GB2312,GBK,JNI,HexTOStr)

///////////////////////////////////////////////////////////////////////* ASCII 英文一个字节 gb2312,gbk 中文两个字节,英文一个字节 在中文系统中ansi一般指gb2312或gbk GB2312、GBK都属于双字节字符集 (DBCS) Utf-8 中文三个字节,英文一个字节 Unicod

2012-05-09 23:31:14 6965

转载 BCC(异或)、CRC、LRC校验算法

BCC、CRC、LRC校验算法一、校验算法BCC(Block Check Character/信息组校验码),好像也是常说的异或校验方法CRC(Cyclic Redundancy Check/循环冗余校验)LRC(Longitudinal Redundancy Check/纵向冗余校验)二、BCC(Block Check Character/信息组校验符号)非接触卡

2012-05-04 02:42:30 9567

转载 MultiByteToWideChar的与WideCharToMultiByte的参数详解

第一个就是宽字符到多字节字符转换函数,函数原型如下: int WideCharToMultiByte( UINT CodePage, DWORD dwFlags, LPCWSTR lpWideCharStr, int cchWideChar, LPSTR lpMultiByteStr, int cbMultiByte, LPCSTR lpDefaultChar,

2012-05-03 01:47:38 580

转载 最长递增子序列问题的求解

最长递增子序列问题的求解 最长递增子序列问题是一个很基本、较常见的小问题,但这个问题的求解方法却并不那么显而易见,需要较深入的思考和较好的算法素养才能得出良好的算法。由于这个问题能运用学过的基本的算法分析和设计的方法与思想,能够锻炼设计较复杂算法的思维,我对这个问题进行了较深入的分析思考,得出了几种复杂度不同算法,并给出了分析和证明。一,   最长递增子序列问题的描述设L=a1

2012-05-02 20:20:34 657

原创 按位异或运算 (正数异或负数)

正数反码:与原码相同负数反码:符号位为“1”,数值位按位 取反。 正数补码:与原码相同负数补码:求反加一记住:所有参与运算的都是以补码形式进行的 结果也是补码 因此也需要将补码转换成为原码的形式存在下面就以一个例子进行讲解:-2^3那么怎么转换成位补码呢?1.如果是负数的情况,那么将需要进行转换负数的补码:符号位为1,其余位为该数绝对值的

2012-04-29 10:58:26 10801 2

转载 编程思想

1、程序等于软件吗?答:程序不等于软件,有商业价值的程序才是软件。2、什么标志着商业软件门槛的形成?答:软件经销商的出现标志着软件门槛的形成。3、高级程序员应该具备怎样的思维?答:高级程序员应该具备开放性思维,从里到外的所有知识都能了解,看到世界最新技术就能马上了解,马上掌握。实际上,技术到达最高境界后是没有分别的。任何东西都是相通的,只要你到达这个境界以后,什么问题一看就能明

2012-04-29 10:25:10 477

转载 Ubuntu10的JDK配置

1、从http://download.oracle.com/otn-pub/java/jdk/7u3-b04/jdk-7u3-linux-i586.tar.gz?AuthParam=1334666101_03891cdd89a33733e4a48da35695a4c1     下载JDK2、解压缩复制到  /opt/下如图:3、配置环境变量#gedit /etc/profi

2012-04-29 10:23:14 383

转载 dll的def文件与__declspec(dllexport)导出函数方式比较

【__declspec(dllexport) 方式】首先对C和C++编译(extern "C")与调用约定(__cdecl、__stdcall、__fastcall)进行组合测试:【C++编译】__declspec(dllexport) int add(int, int);__declspec(dllexport) int __cdecl add(int, int);

2012-04-29 00:55:47 793

原创 管脚定义

#define GPFCON (*(volatile unsigned long *)0x56000050)对于(volatile unsigned char *)0x20我们再分析一下,它是由两部分组成: 1)(unsigned char *)0x20,0x20只是个值,前面加(unsigned char *)表示0x20是个地址,而且这个地址类型是unsigned char

2012-04-29 00:48:24 1500

原创 CRC 循环冗余校验码 (VC编程)

/*CRC 循环冗余校验码 (VC编程) CRC(Cyclic Redundancy Check)循环冗余校验码   CRC码是由两部分组成,前部分是信息码,就是需要校验的信息,后部分是校验码,如果CRC码共长n个bit,信息码长k个bit,就称为(n,k)码。 它的编码规则是:  1、首先将原信息码(kbit)左移r位(k+r=n)   2、运用一个生成多项式g(

2012-04-28 23:33:33 2068

原创 c语言排序算法

c语言排序算法非稳定的排序算法:选择排序、快速排序、希尔排序、堆排序稳定的排序算法:冒泡排序、插入排序、归并排序和基数排序是稳定的排序算法。让我们先定义一个整型数组a[n],下面用五种方法对其从小到大排序。 (1)“冒泡法” 冒泡法大家都较熟悉。其原理为从a[0]开始,依次将其和后面的元素比较,若a[0]>a[i],则交换它们,一直比较到a[n]。同理对a[1]

2012-04-28 23:17:26 847

原创 面试所见题目

第一题: char * str = "1234567abc";     printf("%d\n",sizeof(str));   打印结果:4      printf("%d\n",strlen(str));打印结果:10第二题:     char * p=0 ;   int  * p1 = 0; int ** p2 =0;问题:(int)(p+1) __

2012-04-28 18:51:18 616

原创 win32 socket的一个简单的例子

在visual c++里建两个win32控制台工程,分别编译下面的服务端和客户端服务端:#include #include #include #pragma comment(lib,"ws2_32.lib")#define NO_FLAGS_SET 0#define PORT (u_short)44965#define MAXBUFLEN 256//服务器 -- VC++

2012-04-27 01:03:38 7011

转载 VC内存泄露检查工具:Visual Leak Detector

初识Visual Leak Detector       灵活自由是C/C++语言的一大特色,而这也为C/C++程序员出了一个难题。当程序越来越复杂时,内存的管理也会变得越加复杂,稍有不慎就会出现内存问题。内存泄漏是最常见的内存问题之一。内存泄漏如果不是很严重,在短时间内对程序不会有太大的影响,这也使得内存泄漏问题有很强的隐蔽性,不容易被发现。然而不管内存泄漏多么轻微,当程序长时间运行时,其破

2012-04-27 00:07:35 968

原创 C语言运算符及其优先级汇总表口诀

C语言运算符及其优先级汇总表口诀圆下箭头一顿号非凡增减富强针地长三乘除,四加减,五移位千万别把鱼忘记,它在盛饭的厨子里小灯大灯灯灯不等爸喂鱼,舅疑惑,裸鸡也疑惑十三姨,十四父,十五逗,兜到低“圆下箭头一顿号”指的是第15级的运算符。正在装载数据……其中圆指的是运算符(),下指的是下标运算符[],箭头指的是指向结构体成员运算符->,

2012-04-27 00:00:31 554

原创 面试题 引用和指针

1 引用简单理解引用就是一个变量的另一个名字,从这个名字的角度对变量可以加以修饰,同时拥有const指针的特性 ,所以在声明时必须初始化1     int a=1;2     const int b=4;3     int& ref_a;//必须初始化 :declared as reference but not initialized4     const int&

2012-01-03 23:26:53 559

原创 面试题(2)预处理、const、static、sizeof

1.#ifdef #else #endif指示符#ifdef指示符常用来判断一个预处理常量是否已被定义,比便有条件的包含代码。#ifndef与#ifdef作用相同,只是判断方式相反。#includestdio.h>#includestdlib.h>#define DEBUGint main(){    int i=0;char c;    while(1)

2012-01-03 22:59:15 514

原创 16个经典面试问题回答思路

面试过程中,面试官会向应聘者发问,而应聘者的回答将成为面试官考虑是否接受他的重要依据。对应聘者而言,了解这些问题背后的“猫腻”至关重要。本文对面试中经常出现的一些典型问题进行了整理,并给出相应的回答思路和参考答案。读者无需过分关注分析的细节,关键是要从这些分析中“悟”出面试的规律及回答问题的思维方式,达到“活学活用”。  问题一:“请你自我介绍一下”  思路:

2012-01-03 22:39:24 454

原创 软件编程推荐书籍 大全

<br />前 言 <br />  数字图像处理技术与理论是计算机应用的一个重要领域,许多工程应用都涉及到图像处理,一直有一个强烈的愿望,想系统的写一个关于数字图像处理的讲座,由于工作学习很忙,时至今日才得以实现。 <br />  "图"是物体透射光或反射光的分布,"像"是人的视觉系统对图的接收在大脑中形成的印象或认识。图像是两者的结合。人类获取外界信息是靠听觉、视觉、触觉、嗅觉、味觉等,但绝大部分(约80%左右)来自视觉所接收的图像信息。图像处理就是对图像信息进行加工处理,以满足人的视觉心理和实际应用的需

2011-02-18 13:13:00 649

VC 启动界面

VC 启动界面

2014-01-09

对称 分组加密

对称加密和分组加密中的四种模式(ECB、CBC、CFB、OFB)

2013-12-28

CxImage图像处理类

CxImage 有上百个大大小小的功能,各种格式图像的处理。

2013-08-25

libsndfile

FSK 解码 libsndfile libsndfile

2013-08-14

printer打印指令+测试工具

打印指令+测试工具.zip

2013-05-04

iColorPicker

iColorPicker RGB 取色器

2013-04-12

portmon

portmon 微软 串口监视

2013-04-07

串口监视过滤驱动及应用系统开发.pdf

串口监视过滤驱动及应用系统开发.pdf

2013-04-02

[天书夜读-从汇编语言到Windows内核编程].谭文.邵坚磊.原版

可以复制文档内的文字 [天书夜读-从汇编语言到Windows内核编程].谭文.邵坚磊.

2013-03-29

工作目录DDK1803

工作目录DDK1803

2013-03-21

驱动加载工具

驱动加载工具

2013-03-19

usb( HID CDC)官网下载规范文档

usb( HID CDC)官网下载规范文档

2013-03-15

VC6开发ActiveX控件 整套学习资料

VC6 + ActiveX控件 + html 测试工具 + html 文档 + 证书签名工具

2013-03-08

Windows驱动开发技术详解(全部章节PDF + code)

Windows驱动开发技术详解(全部章节PDF + code)

2013-02-02

汉字机内码、国标码和区位码定义区别(含例子)

汉字机内码、国标码和区位码定义区别(含例子)

2012-06-14

hello-0.0.1.tar.gz

hello-0.0.1.tar.gz

2012-06-04

测试包 autotools

测试包 autotools

2012-06-04

U盘锁 usbLock

U盘锁,可以控制电脑 u口,能够区分存储设备与非存储设备

2012-05-02

Windows xp 热键管理 HookDLL

Windows xp 热键管理 HookDLL

2012-05-02

C_C++日志类.zip

C_C++日志类.zip

2012-05-02

CoderCovertLib JNI 字符转换

CoderCovertLib 字符转换 UTF-8 UNICODE GB2312

2012-05-02

TraceWin30 调试工具

很好用的TraceWin30 ,可以直接运行调试版的VC程序,然后在TraceWin30。exe 可以看到 TRACE 打印出来的信息。

2012-05-02

如何制作与使用 .RES 资源文件

'这是从资源文件里调用msvbvm60.dll 注册的代码 '本代码是放在模块 Moudule1.bas 里面,不是放在Form1里面的. '要注册.dll .ocx最好是放在.bas里面,并把启动项设为Sub Main '否则有可能在还没进入窗体执行注册的动作前,就产生错误而中断了 '尤其是98系统之下的msvbvm60.dll '先建立一个资源文件, 在 Custom 101 装载 msvbvm60.dll Global winsys$, appdisk$, aa$ Sub Main() On Error Resume Next If App.PrevInstance Then MsgBox "本系统已运行中, 不得重复加载!!", vbOKOnly, "菜鸟多媒体桌面工具": End appdisk = IIf(Right(App.Path, 1) = "\", App.Path, App.Path & "\") winsys = GetSyspath Call regdllocx Form1.Show End Sub Private Sub regdllocx() On Error Resume Next Dim byt() As Byte aa = winsys & "msvbvm60.dll" If Dir(aa) = "" Then byt = LoadResData(101, "CUSTOM") Open aa For Binary As #1 Put #1, 1, byt() Close #1 End If If Dir(aa) <> "" Then aa = "Regsvr32 /s " & aa Call Shell(aa, vbHide) End If End Sub Public Function GetSyspath() As String '获取system32路径 aa = Trim(Environ("ComSpec")) GetSyspath = Mid(aa, 1, InStrRev(aa, "\")) End Function '直接从资源文件调用 .bmp图片(只允许.bmp),不必释放到硬盘 'Me.Icon = LoadResPicture(101, vbResIcon) '注释:加载图标 'Picture1.Picture = LoadResPicture(101, vbResBitmap) '注释:加载位图 'Command1.MouseIcon = LoadResPicture(101, vbResCursor) '注释:加载光标' '播放 WAVE 声音(只允许.wav) Option Explicit Private Declare Function sndPlaySoundFromMemory Lib "winmm.dll" Alias "sndPlaySoundA" (lpszSoundName As Any, ByVal uFlags As Long) As Long Const SND_ASYNC = &H1 Const SND_MEMORY = &H4 Private Sub Command1_Click() Dim bArr() As Byte bArr = LoadResData(101, "CUSTOM") DoEvents sndPlaySoundFromMemory bArr(0), SND_ASYNC Or SND_MEMORY End Sub 本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/cbm666/archive/2008/03/08/2158287.aspx

2011-02-18

\PC与SP30之间RS232联接命令.doc

\PC与S\PC与SP30之间RS232联接命令.doc\PC与SP30之间RS232联接命令.docP30之间RS232联接命令.doc

2011-01-11

M590 AT指令集_V2.1

M590 AT指令集_V2.1M590 AT指令集_V2.1M590 AT指令集_V2.1M590 AT指令集_V2.1M590 AT指令集_V2.1

2011-01-11

仅禁止软件光盘的AutoRun.REG仅禁止软件光盘的AutoRun.REG

仅禁止软件光盘的AutoRun.REG仅禁止软件光盘的AutoRun.REG仅禁止软件光盘的AutoRun.REG

2011-01-11

自动运行.reg自动运行.reg

自动运行.reg自动运行.reg自动运行.reg

2011-01-11

Wavecom模块常用AT指令手册

Wavecom模块常用AT指令手册 Wavecom模块常用AT指令手册

2011-01-11

系统工具快速执行 系统工具快速执行

系统工具快速执行系统工具快速执行系统工具快速执行系统工具快速执行系统工具快速执行系统工具快速执行系统工具快速执行系统工具快速执行

2010-11-30

2010广州地铁查询 2010广州地铁查询

2010广州地铁查询2010广州地铁查询2010广州地铁查询2010广州地铁查询2010广州地铁查询2010广州地铁查询2010广州地铁查询2010广州地铁查询2010广州地铁查询

2010-11-30

进制转换进制转换进制转换进制转换进制转换进制转换

进制转换进制转换进制转换进制转换进制转换进制转换进制转换进制转换进制转换

2010-11-30

SIM卡 很多资料速度速度

的点对点的的点对点的点对点的点对点的sadasdasdasd

2010-10-28

rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr

ffffffffffffffffffffffffffffffff

2010-09-23

jietu截图好用软件

egdfgdfgdgdfgdfgdfgdfgdfgdfgdfgfdgdfgfdfgggggggggggggggggggggggggggggggggggg

2010-09-23

空空如也

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

TA关注的人

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