自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 资源 (31)
  • 收藏
  • 关注

转载 大小写转换

由于ANSI和Unicode在函数名上有差别,故都列出来,不过本人以Unicode为主。 【1.用C语言标准库函数toupper,tolower】头文件:cctype   c下面:ctype.h转大写Ansi版: int toupper(int c);Unicode版:int towupper(wint_t c);MSDN: toupper, _toupper, tow

2012-12-07 14:20:24 892

转载 Http和Socket连接区别

相信不少初学手机联网开发的朋友都想知道Http与Socket连接究竟有什么区别,希望通过自己的浅显理解能对初学者有所帮助。1、TCP连接要想明白Socket连接,先要明白TCP连接。手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。建立起一个TCP连接需要

2012-06-02 17:18:19 615

转载 SQLite3源码在Windows及WinCE平台下的编译方法

好久没有写博客了,最近有时间又开始写点东西。最近,刚好需要用到SQLite3数据库,就自己研究了一下,这个的确是个好东西,开源的东西都还不错。好了,言归正传。相信不少人在用SQLite3源码编译的时候还是费了不少劲的,网上找来的东西都讲的不是很完整。下面,我就将自己的编译方法写了出来。首先从SQLite官方网站http://www.sqlite.org/download.html

2012-05-20 15:19:10 889

转载 Windows平台下Android开发环境的搭建

1、下载安装JDK1.6,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u25-download-346242.html,下载完了之后直接安装就可以了,文件不到100MB,应该还是挺快的。2、下载Eclipse最新版,下载地址:http://www.eclipse.org/downloads/,根据自己的

2012-05-20 15:14:59 690

转载 WinCE平台下WM_COPYDATA消息的简单应用

WinCE应用程序中实现进程间通信的方式有很多种,比如说:剪贴板、命名管道、匿名管道、邮槽、共享内存、文件映射、Socket等等,其中最简单的一种应该是WM_COPYDATA消息,现写一个小例,以做备忘:现有两个程序A和B,A做为发送数据方,B做为接收数据方。A(发送端)程序中的程序片段如下:  HWND hwnd = ::FindWindow(NULL, _T("B"));

2012-05-20 15:11:59 675

转载 WinCE中将调试信息写入文件的方法

相信做WinCE开发的朋友都会经常用串口将自己的调试信息打印输出,用来跟踪程序的运行情况,但在有的时候如果机器没有调试串口,我们可以将这些信息写入文本文件中,方便出现Bug后进行代码的跟踪,现将自己写的一段代码发上来与大家分享,希望大家多提建议。代码中用一个宏,就可以方便的控制调试信息是写文件还是打印输入到调试串口,其中写文件部分给出了两种方法,一种是利用Win32 API的方式写文件,令

2012-05-20 15:10:43 610

转载 WinCE中的Data/ Prefetch Abort等异常定位

在调试WinCE程序的时候,有时候会碰到Data/Prefetch Abort的异常,相信从事过WinCE开发的人对这种异常信息应该都不会陌生,系统会在调试控制台输出如下类似信息:Exception 'Prefetch Abort' (3): Thread-Id=05870016(pth=9970c000), Proc-Id=057c0016(pprc=9973cdd4)‘TCPClient.

2012-05-20 15:06:54 2556 2

转载 FAT32 NTFS exFAT

1、FAT32= 不支持单个文件4G 2、NTFS = 现在超过4GB的U盘格式化时默认是NTFS分区,但是这种格式是很伤U盘的,因为NTFS分区是采用“日志式”的文件系统,需要记录详细的读写操作,肯定会比较伤闪盘芯片,因为要不断读写。3、exFAT= 比NTFS简单,比FAT32大,VISTA本身就支持,现在推出xp更新包exFAT只是一个折中的方案,只为U盘而生。(全称Extended

2012-05-17 15:43:20 1289

转载 图解ide硬盘接口图 sata硬盘接口图 SCSI硬盘接口

硬盘接口 目前硬盘接口类型不算多,主要有IDE、SCSI、SATA三种。IDE许多时候以Ultra ATA代替,很多人习惯将Ultra ATA硬盘称为IDE硬盘,但需要说明的是IDE的概念要大于ATA——原则上所有硬盘驱动器集成控制器的设计都属于IDE,SCSI也不例外。当然,以IDE指代ATA已经形成很大的惯性,SATA开始将IDE与ATA区别开来。成熟廉价的是IDE,最新兴的是SATA

2012-05-09 14:23:54 45656

转载 不懂C语言?你该感到危机了!

在大学院校的计算机科学体系中,持续缺乏对嵌入式系统编程关注的情况,可能会让分散的情况日趋严重。事实上,美国的工程教育越来越趋向于集中在某些特定领域,这也日益突显出了当地大学的计算机科学教育在嵌入式系统编程方面的不足之处。然而,问题在于,嵌入式系统开发安全、可靠、关键任务系统的基础,而这些系统通常会用在从医疗到商用客机在内等许多大型开发专案中,因而使问题显得更加突出。 许多批评的声浪都认

2012-05-08 09:04:31 1074

转载 VC++中通过MultiByteToWideChar将string|char*转换为wstring|wchar_t*

将string|char*转换为wstring|wchar_t*的例子:1、string转换为wstring:string str=_T("翔翔糖糖");int size=MultiByteToWideChar(CP_ACP,0,str.c_str(),-1,NULL,0);wchar_t *ch=new wchar_t[size+1];if(!MultiByteToWideC

2012-03-26 22:41:15 1690

转载 对va_start,va_arg,va_end的认识

相信大多数人接触这3个函数应该是在数据结构的数组和广义表这一章节中,大家发现了没有在对数组基本操作函数原型说明中很多的变量都用"..."给省略了如下       status Initarray(array &a,int din,...);//若维数din和随后的长度合法,则构造相应的数组A,并返回OK。       status value(array a,ElemType &e,...

2012-03-08 11:56:14 1000 1

转载 字符,字节,字符串

字符    人们使用的记号,抽象意义上的一个符号。 '1', '中', 'a', '$', '¥', …… 字节    计算机中存储数据的单元,一个8位的二进制数,是一个很具体的存储空间。 0x01, 0x45, 0xFA, …… ANSI字符串    在内存

2011-08-02 14:00:32 13402

转载 编程小技巧

#define Conn(x,y) x##y#define ToChar(x) #@x#define ToString(x) #xx##y表示什么?表示x连接y,举例说:int  n = Conn(123,456);  结果就是n=123456;char* s

2011-07-05 10:25:24 651

原创 C 风格(C-style)强制转型

C 风格(C-style)强制转型如下: (T) exdivssion // cast exdivssion to be of type T 函数风格(Function-style)强制转型使用这样的语法: T(exdivssion) // cast exdivssion to be of type T  这两种形式之间没有本质上的不同,它纯粹就是一个把括号放在哪的问题。我把这

2011-06-29 11:52:00 1103

转载 SendMessage 和 PostMessage 的区别

1、首先是返回值意义的区别,我们先看一下 MSDN 里的声明:LRESULT SendMessage(        HWND hWnd,        UINT Msg,        WPARAM wParam,        LPARAM lParam);BOOL PostMessage(        HWND hWnd,        UINT Msg,        WPARA

2011-06-29 11:06:00 359

转载 #pragma once与#ifndef

为了避免同一个文件被include多次<br /><br />1   #ifndef方式<br />2   #pragma once方式<br /><br />在能够支持这两种方式的编译器上,二者并没有太大的区别,但是两者仍然还是有一些细微的区别。<br />    方式一:<br />    #ifndef __SOMEFILE_H__<br />    #define __SOMEFILE_H__<br />    ... ... // 一些声明语句<br />    #endif<br />    方

2011-02-18 08:53:00 441

原创 在VMWare下安装Chrome OS

一、      TinyXml的特点TinyXml是一个基于DOM模型的、非验证的轻量级C++解释器。1.      SAX和DOM目前XML的解析主要有两大模型:SAX和DOM。其中SAX是基于事件的,其基本工作流程是分析XML文档,当发现了一个新的元素时,产生一个对应事件,并调用相应的用户处理函数。这种方式占用内存少,速度快,但用户程序相应得会比较复杂。而DOM(文档对象模型),则是在分析时,一次性的将整个XML文档进行分析,并在内存中形成对应的树结构,同时,向用户提供一系列的接口来访问和编辑该树结构。

2011-02-14 09:59:00 7361

转载 TinyXml学习笔记

一、      TinyXml的特点TinyXml是一个基于DOM模型的、非验证的轻量级C++解释器。1.      SAX和DOM目前XML的解析主要有两大模型:SAX和DOM。其中SAX是基于事件的,其基本工作流程是分析XML文档,当发现了一个新的元素时,产生一个对应事件,并调用相应的用户处理函数。这种方式占用内存少,速度快,但用户程序相应得会比较复杂。而DOM(文档对象模型),则是在分析时,一次性的将整个XML文档进行分析,并在内存中形成对应的树结构,同时,向用户提供一系列的接口来访问和编辑该树结构。

2010-12-25 10:49:00 569

转载 编写Linux/Unix守护进程

<br />作者 liubin<br />守护进程在Linux/Unix系统中有着广泛的应用。有时,开发人员也想把自己的程序变成守护进程。在创建一个守护进程的时候,要接触到子进程、进程组、会晤期、信号机制、文件、目录和控制终端等多个概念。因此守护进程还是比较复杂的,在这里详细地讨论Linux/Unix的守护进程的编写,总结出八条经验,并给出应用范例。 <br /> 编程要点 <br />    1.屏蔽一些有关控制终端操作的信号。防止在守护进程没有正常运转起来时,控制终端受到干扰退出或挂起。示例如下: <b

2010-09-16 13:49:00 403

转载 线程池原理及创建(C++实现)

本文给出了一个通用的线程池框架,该框架将与线程执行相关的任务进行了高层次的抽象,使之与具体的执行任务无关。另外该线程池具有动态伸缩性,它能根据执行任务的轻重自动调整线程池中线程的数量。文章的最后,我们给出一个简单示例程序,通过该示例程序,我们会发现,通过该线程池框架执行多线程任务是多么的简单。为什么需要线程池目前的大多数网络服务器,包括Web服务器、Email服务器以及数据库服务器等都具有一个共同点,就是单位时间内必须处理数目巨大的连接请求,但处理时间却相对较短。传统多线程方案中我们采用的服务器模型则是一旦

2010-09-16 13:01:00 947

转载 内存泄漏

<br />一般我们常说的内存泄漏是指堆内存的泄漏。指由于疏忽或错误造成程序未能释放已经不再使用的内存的情况。内存泄漏并非指内存在物理上的消失,而是应用程序分配某段内存后,由于设计错误,失去了对该段内存的控制,因而造成了内存的浪费。内存泄漏与许多其他问题有着相似的症状,并且通常情况下只能由那些可以获得程序源代码的程序员才可以分析出来。然而,有不少人习惯于把任何不需要的内存使用的增加描述为内存泄漏,即使严格意义上来说这是不准确的。<br />堆内存是指程序从堆中分配的,大小任意的(内存块的大小可以在程序运行期

2010-09-16 12:56:00 530

原创 CPU MCU MPU DSP

CPU(Central Processing Unit,中央处理器)发展出来三个分枝,一个是DSP(Digital Signal Processing/Processor,数字信号处理),另外两个是MCU(Micro Control Unit,微控制器单元)和MPU(Micro Processor Unit,微处理器单元)。MCU集成了片上外围器件;MPU不带外围器件(例如存储器阵列),是高度

2010-04-23 11:23:00 715

原创 什么是ARM

ARM 即Advanced RISC Machines的缩写,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。 1985年4月26日,第一个ARM原型在英国剑桥的Acorn计算机有限公司诞生,由美国加州SanJoseVLSI技术公司制造。 20世纪80年代后期,ARM很快开发成Acorn的台式机产品,形成英国的计算机教育基础。 1990年成立了Advanc

2010-04-15 19:58:00 789

原创 什么是嵌入式系统

嵌入式系统(Embedded System),一般指非桌面计算机系统(即非PC、服务器、大中小型机等),有计算机功能且可以“嵌入”到专用设备并发挥专用功能的计算机设备或器材。它是以应用为中心,软硬件可裁减的,适应应用系统对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统。简单地说,这种计算机通过和设备的电气连接,并通过在计算机上运行的专用程序对接口进行通讯和控制,使设备成为智能化的设

2010-04-15 19:54:00 462

转载 ARM主板和X86主板的优缺点比较

 ARM主板相对于X86主板的优点:     (1)、功耗:这是ARM主板最大的优点之一,一般的VIA的X86主板,功耗都在40W左右或者以上,而ARM主板的功耗极低,EICB系列主板功耗整体也只有1W左右。     (2)、发热:ARM主板不会发热,主板温度一般是常温,因此可以一直常年累月开机在线工作,不会出现任何问题。而X86主板CPU必须配风扇而且不能长期工作,否则主板产生的温度会让主板整体

2010-04-15 19:51:00 1452

原创 单片机与嵌入式系统

一、现代计算机的技术发展史 1.始于微型机时代的嵌入式应用 电子数字计算机诞生于1946年,在其后漫长的历史进程中,计算机始终是供养在特殊的机房中,实现数值计算的大型昂贵设备。直到20世纪70年代,微处理器的出现,计算机才出现了历史性的变化。以微处理器为核心的微型计算机以其小型、价廉、高可靠性特点,迅速走出机房;基于高速数值解算能力的微型机,表现出的智能化水平引起了控制专业人士的兴趣,要求

2010-03-31 10:31:00 765

转载 JAVA嵌入式

Java是在C++基础上改进了的面向对象的语言。它可以得到类的封装、继承、多态等的优异重用性的好处,Java的小应用程序(Java Applet)还特别适合于上网。看来,用Java开发上的网的嵌入式应用应是很理想的,可惜,实现起来受嵌入式设备硬件在速度、存储器容量、和其它资源的限制,加上桌面Java语言操作不到硬件,和执行时间的不确定性,使Java应用于嵌入式系统遇到新的问题。Sun公司按Pers

2010-03-28 16:06:00 1931

转载 80后的我们已经谈不起任何恋爱

现在的我们已经到了谈婚论嫁的年龄, 但是身边好多同学和同事仍然是单身。 当我问及他们的时候,回答都是:婚姻是件大事不敢太草率了, 所以选自己另一半的时候更多的是理智。 然而,好多没谈过恋爱的人还是期望自己能谈一场真正的恋爱, 然后和自己心爱的人携手走入婚姻的殿堂。 但是谈恋爱对80年代的我们来说已经成为一种奢侈, 有这种想法的人恐怕不只是我一个人,因为我们都谈不起恋爱了。 不管谈过还是没谈过,都不

2010-03-19 19:20:00 1003 1

原创 链表的c语言实现

准备:动态内存分配一、为什么用动态内存分配但我们未学习链表的时候,如果要存储数量比较多的同类型或同结构的数据的时候,总是使用一个数组。比如说我们要存储一个班级学生的某科分数,总是定义一个float型(存在0.5分)数组:float score[30];但是,在使用数组的时候,总有一个问题困扰着我们:数组应该有多大?在很多的情况下,你并不能确定要使用多大的数组,比如上例,你可能并不知道该班级的学生的

2010-01-04 16:37:00 707

原创 windows CE (HOW TO?)

Q: Does CE support java ,Macro media flash and PDF view ?A:Java: only java script,it does not include java virtual machine (3rd party support)Pocket word: Yes.PDF view: Yes.Macro mediaFlash: 3rd party

2009-12-24 16:59:00 677 1

原创 常用的函数调用约定 stdcall/cdecl/fastcall

stdcall/cdecl/fastcall/thiscall/naked callstdcall调用约定stdcall很多时候被称为pascal调用约定,因为pascal是早期很常见的一种教学用计算机程序设计语言,其语法严谨,使用的函数调用约定就是stdcall。在Microsoft C++系列的C/C++编译器中,常常用PASCAL宏来声明这个调用约定,类似的宏还有WINAPI

2009-12-24 16:26:00 437

原创 在Wince5.0中实现关机功能

wince5.0带的电源管理驱动只实现了“休眠(SUSPEND)”功能,未实现“关机(SHUT_DOWN)”功能。调用函数 SetSystemPowerState()时,无论参数是POWRE_STATE_OFF还是POWRE_STATE_SUSPEND,最终均为 SUSPEND。如果需要关机,还需要其他的办法。我看过有人专门写了一个PowerKey的驱动,用来实现关机。但是这种方法的问题在于,

2009-12-24 16:25:00 544

原创 Windows CE 桌面UI修改

桌面UI主要涉及到CDesktopView类 ,CDesktopView类继承于CDefShellView类;如果要更改桌面的UI表现形式,只要从这个类入手即可.CDesktopView类位于    $(_WINCEROOT)/PUBLIC/SHELL/OAK/HPC/CESHELL文件夹中.             1.更改右键弹出菜单选项     桌面的弹出菜单有两种:一种是在桌面按右键弹出的

2009-12-24 16:19:00 585

原创 WINCE注册表应用

1.让桌面不显示"我的电脑","回收站"  删除以下键值:  [HKEY_LOCAL_MACHINE/Explorer/Desktop]  {000214A0-0000-0000-C000-000000000046}  ;"My Computer"  {000214A1-0000-0000-C000-000000000046}  ;Recycle Bin"  存在这两个键值的文件有:  $(_

2009-12-24 16:16:00 492

转载 如何在Wince5.0先建立并使用自己的Shell

环境:Wince5.0+ARM926目的:按照自己的风格建立Shell背景:考虑到产品外观及风格的一致性,无法直接把Explorer作为Shell,而且,又无简单的把Explorer直接放到后台(会出现一些问题,譬如启动的瞬间,Explorer会显示一下)方法:1. 直接修改Explorer,改为自己的风格。个人认为这是最根本最有效的方法,但是工作量比较大,考虑到时间只能放弃。2. 直接用自己的S

2009-12-24 16:08:00 711

原创 XSET

遇到了关于LINUX待机问题 ,解决取消LINUX待机:XSET -dpms特总结其相关使用说明:NAME       xset - user preference utility for X SYNOPSIS       xset [-display display]       [-b] [b {on|off}] [b [volume [pitch [duratio

2009-12-23 11:15:00 2306 1

原创 VMware 提供的网络连接方式

VMware 提供四种网络连接方式 (1)Bridged方式 用这种方式,虚拟系统的IP可设置成与本机系统在同一网段,虚拟系统相当于网络内的一台.独立的机器,与本机共同插在一个Hub上,网络内其他机器可访问虚拟系统,虚拟系统也可访问网络内其他机器,当然与本机系统的双向访问也不成问题. (2)NAT方式 这种方式也可以实现本机系统与虚拟系统的双向访问.但网络内其他机器不能访问虚拟系统,虚拟系统可

2009-12-23 09:44:00 785

原创 TCHAR

TCHAR 就是当你的字符设置为什么就是什么例如:程序编译为 ANSI, TCHAR 就是相当于 CHAR当程序编译为 UNICODE, TCHAR 就相当于 WCHARchar :单字节变量类型,最多表示256个字符,wchar_t :宽字节变量类型,用于表示Unicode字符,它实际定义在里:typedef unsigned short wchar_t。为了让编译器识别Unic

2009-12-16 10:34:00 5760

原创 软链接和硬链接

   本文试图清晰彻底的解释软链接和硬链接文件的区别   一 链接文件   链接有两种方式,软链接和硬链接。  1 软链接文件  软链接又叫符号链接,这个文件包含了另一个文件的路径名。可以是任意文件或目录,可以链接不同文件系统的文件。   链接文件甚至可以链接不存在的文件,这就产生一般称之为"断链"的问题(或曰“现象"),链接文件甚至可以循环链接自己。类似于编程语言中的递归。  用ln -s 命令

2009-11-20 11:56:00 480

DSDM敏捷软件开发方法

基于DSDM敏捷软件开法方法;DSDM原则、模型、及价值观

2018-09-11

精益开发实战

用看板管理大型软件项目,精益软件开发管理方法论;持续改进

2018-09-11

面向模式的软件体系结构

面向模式的软件体系结构卷中文完整版 1-模式系统、卷2-用于并发和网络化对象模式、卷3-资源管理、卷4_分布式计算的模式语言、卷5_模式与模式语言

2018-05-22

sliverlight for wince6

sliverlight for wince6 自定义开发模板及VS2005和VS2008部署

2012-03-19

CVS使用速成配置过程详解

CVS使用速成配置过程详解 CVS使用速成配置过程详解

2011-07-05

WinCE的OpenGL+ES教程

WinCE的OpenGL+ES教程 基于WinCE的OpenGL ES教程(有两个教程,一个是E文版的,开发环境是EVC4.0;另一个教程是网页版的,开发环境是VS2005的)

2010-12-01

TXT电子书源码(EVC开发的TXT电子书)

WINCE 电子书 EVC开发的TXT电子书源码 WINCE 电子书 EVC开发的TXT电子书源码

2010-11-08

串口调试助手VC++版

串口调试助手VC++版 串口调试助手VC++版

2010-10-19

C++做的WINDOWS纸牌

和WINDOWS上的纸牌几乎完全一样,关键里面的算法值得借鉴,用VC编写的WIN32程序;本人提供的是知识共享,不存在任何商业利益,版权归WINDOWS所有!

2010-10-10

android_essentials.pdf

android_essentials.pdf英文版

2010-09-03

基于嵌入式WEB的网络视频监控系统的设计与实现

基于嵌入式WEB的网络视频监控系统的设计与实现

2010-08-11

SQLite Database Browser

SQLite Database Browser

2010-07-08

嵌入式工程师应该学什么?

嵌入式工程师应该学什么? 让你了解入嵌入式行业的一些学习建议

2010-03-09

热带鱼屏保 用于WINDOWS的屏保

热带鱼屏保 纯净的热带鱼屏保,破解版热带鱼屏保

2010-02-02

turboC2.0 适合C初级开发人员

turboC2.0 适合C初级开发人员 turboC2.0 适合C初级开发人员

2010-01-05

使用开源软件-自己动手写操作系统-1.0-2.pdf

使用开源软件-自己动手写操作系统-1.0-2.pdf 详细讲述了一些关于操作系统的有关知识,希望能给一些专业人士参考借鉴。

2009-09-10

Loadcepc+MSDos

适合应用于X86嵌入式WINCE开发的朋友们的BOOTLOADER,直接放入ROM,即可加载内核NK.BIN

2009-09-09

Microsoft Windows CE User Interface Services Guide用户界面服务指南( 完整版)

Microsoft Windows CE User Interface Services Guide用户界面服务指南.pdf 完整版

2009-09-01

WIN 98 BOOTDISK

WIN 98 BOOTDISK,使用virual floppy工具即可得出BOOT所有文件,主要用于格式化嵌入式平台CF卡FAT16系统,直接使用USB的U盘即可启动,不再需要使用光驱和DOS工具箱了。

2009-07-30

WinCE 内核定制\理解

WinCE 内核定制\理解,对于学习WINCE的人有所帮助

2009-06-29

基于C++的WIN32 API

一个老外总结的WIN32 API ,是基于C++的,很好,比较适合学习VC的人使用

2009-06-29

虚拟光驱 virual Floppy

虚拟光驱,可不必再安装软驱,软驱的时代已经过去了,但还有部分工作还是需要软驱参与,这个软件解决了此类问题

2009-06-29

写好代码十个秘诀

写好代码十个秘诀,精典

2008-05-14

JAVA程序员必读基础篇

JAVA程序员必读基础篇

2008-05-12

Java学习从入门到精通

Java学习从入门到精通

2008-05-12

Java开发者的十大戒律

Java开发者的十大戒律

2008-05-11

CSS特效代码生成器

CSS特效代码生成器 v1.0

2008-05-05

五种提高 SQL性能的方法

五种提高 SQL性能的方法

2008-05-05

空空如也

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

TA关注的人

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