自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

http://ysir.me

博客已迁移至 http://ysir.me

  • 博客(76)
  • 收藏
  • 关注

原创 用了这款效率神器,才开始后悔以前在电脑上浪费的时间

作为一个内容运营,平日需要收集各种素材、资讯网站,一个收藏工具,极大提升了我的效率。pinbox, 小众,国产,实用,美观, 良心!pinbox不仅手机可以用,还可以和电脑/工作场景无缝对接。首先值得一提的是它的颜值。秉持着极简主义,这款应用令人一见倾心。以紫色为基调,icon设计简约,有意在做减法。布局美观,井然有序。* 颜值★★★★★简约但不简单,专门为不同内容设置了三种模...

2018-11-27 11:42:38 600

翻译 15 款免费好用的 Mac App

1. Skitch来自 Evernote 的这款截屏应用能够帮助你截取屏幕上的任何东西,并且保存到 Evernote 账户上。Skitch 是 Mac 独占应用。2. Simplenote这款应用能够让你快速建立和收藏笔记并且同步到所有设备,它没有 Evernote 那么复杂的功能,简单正是它的特点。3. JumpcutJumpcut 可能是最轻量的剪切板管...

2018-07-04 01:02:53 16828

原创 Cannot find autoconf

Cannotfind autoconf. Please check your autoconf installation and the$PHP_AUTOCONFenvironment variable. Then, rerun this script. 解决方案,终端输入命令:sudo apt-get install m4sudo apt-get isntall autoco

2016-04-15 13:52:40 599

原创 Xcode: No matching provisioning profiles found

1.右键 xcodeproj 文件 -> 显示包内容。2.打开 pbxproj 文件。3.删除 PROVISIONING_PROFILE 整行,重启项目。http://stackoverflow.com/questions/18475964/xcode5-no-matching-provisioning-profiles-found-issue-but-good-at-xc

2016-02-18 15:38:33 816

原创 Missing iOS Distribution signing identity for

下载 https://developer.apple.com/certificationauthority/AppleWWDRCA.cer双击安装到钥匙串。钥匙串 -> 显示 -> 显示已过期的证书。钥匙串区域选择系统标签。删除 Apple Worldwide Developer Relations Certificate Authority certificates。

2016-02-18 14:36:45 719

原创 Windows下error LNK2019: 无法解析的外部符号 __imp__select@20

缺少Ws2_32.lib,Wldap32.lib这两个库,直接搜索这两个库放到程序目录下即可。

2015-11-18 13:16:55 3157

原创 Objective-C之property属性分析

@property和@synthesize用来生成属性的set和get方法格式:@property(属性列表) 类型 属性名@synthesize 属性名属性列表包括:strong(retain), copy, weak(assign), atomic, nonatomic, readonly, readwrite, getter=name, setter=namest

2015-09-23 22:48:45 1148 1

原创 error LNK2019: 无法解析的外部符号 __imp____iob_func

在VS2015中使用静态库时编译出错1>libcurl_md.lib(cookie.obj) : error LNK2019: 无法解析的外部符号 __imp____iob_func,该符号在函数 _Curl_cookie_init 中被引用1>libcurl_md.lib(url.obj) : error LNK2001: 无法解析的外部符号 __imp____iob_func1>l

2015-09-23 18:06:50 17365 5

原创 Objective-C数据类型输出格式及隐式转换详解

简单数据类型和输出格式符类型说明符格式符char%cshort int%hd, %hi, %hx, %hounsigned short int%hu, %hx, %hoint%d, %i, %x, %ounsig

2015-09-21 23:39:32 1193

原创 初识Git

对于任何一个文件,在 Git 内都只有三种状态:已提交(committed),已修改(modified)和已暂存(staged)。已提交表示该文件已经被安全地保存在本地数据库中了;已修改表示修改了某个文件,但还没有提交保存;已暂存表示把已修改的文件放在下次提交时要保存的清单中。由此我们看到 Git 管理项目时,文件流转的三个工作区域:Git 的工作目录,暂存区域,以及本地仓库。基本

2015-09-17 16:54:11 464 2

原创 C语言实现静态链表

/* * 数组的第一个和最后一个元素作为特殊元素处理,不存数据。 * 把未被使用的数组元素称为备用链表。 * 数组的第一个元素,即下标为0的元素的cur存放备用链表的第一个结点的下标。 * 数组中最后一个元素的cur则存放第一个有数值的元素的下标,相当于单链表头结点,整个链表为空时为0。 */#include #define MAXSIZE 7#define OK 1#defi

2015-09-17 00:31:56 975

原创 Qt动态库的生成和使用

编译成动态库打开工程文件.proTEMPLATE = libTARGET = configwifiSOURCES删除main.cppmake cleanmake生成.so文件armv6z-mediatek451_001_vfp-linux-gnueabi-strip libconfigwifi.so* 缩小文件大小调用这个动态库新建工程,用上面不用的ma

2015-09-17 00:18:32 2255

转载 Bug和Bug生命周期中的各种状态

从一个bug被发现到这个bug被关闭这一段时间,bug可能会有以下状态:new ,open Postpone,Pending Retest,Retest,Pending Reject,Reject,Deferred,closed(请注意这里有很多种状态,我们需要根据不同情况来决定怎样或者是否需要跟开发人员沟通)下面就对这几种状态进行以下解释: New:(新的) 当某个“bug”

2015-09-17 00:05:14 1324

原创 双系统卸载Ubuntu

启动windows下载MBRFIX解压,把MBRFIX.exe放到c盘根目录下打开windows命令行(开始/附件/命令行)键入:
cd \ [按回车]
mbrfix /drive 0 fixmbr 确定一下(error 5,用管理员模式运行)重启直接进入windows然后删除linux分区

2015-09-17 00:01:44 487

原创 Linux开机显示命令行

Linux登录模式中,主要分为两种,一种是仅有纯文本界面(运行等级run level 3)的登录环境,另一种则是图形界面(运行等级run level 5)以Ubuntu 12.04为例sudo gedit /etc/default/grub找到这一行GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"改成GRUB_CMDLINE_L

2015-09-16 23:58:21 1046

原创 Linux删除乱码文件名

每个文件都有一个i节点号,通过ls -i获取1644970 a.out1645007 main.c使用find命令将文件名传递给rm命令来删除find ./ -inum 12345 -print -exec rm {} -rf /;12345是节点号 /;前面的空格不能少

2015-09-16 23:49:26 834 1

原创 终端程序切换前后台命令之bg,fg,jobs

首先终端下执行vim test.txt打开vim编辑器按下ctrl+z挂起程序终端显示:[1]+  Stopped                 vim test.txt[1]表示作业号然后我们让这个程序后台执行,输入bg 1终端显示:[1]+ vim test.txt &[1]+  Stopped                 vim test

2015-09-16 23:40:55 2620

原创 man命令详解

manmanual手册,通常放在/usr/share/man,修改/etc/man.config(man.conf或manpath.conf)来改善这个目录例如man dateDATE(1) 中数字的含义1 用户在shell环境中可以操作的命令或可执行文件2 系统内核可调用的函数与工具等3 一些常用函数与函数库,大部分为C函数库4 设

2015-09-16 23:27:36 801

原创 ls -al每一列的意思

ls -al查看文件信息drwx------+  9 zyu  staff    306  8 19 21:15 Picturesdrwxr-xr-x+  6 zyu  staff    204  3 30 22:09 Public第一列:文件的类型与权限第一个字母代表文件类型:d目录,-文件,l链接文件,b设备文件里的可供存储的接口设备,c表示设备

2015-09-16 23:22:41 8138

原创 配置vim

vim /etc/vim/vimrc 打开vimrc结尾加上set ts=4 ts = tabstop,缩进所使用的长度set expandtab tab转换成空格set autoindent 自动缩进set number 显示行号打开文件时跳到上一次退出的位置找到Uncomment the following to have Vim jump to the las

2015-09-16 23:16:07 507 1

原创 Linux进程相关,fork,wait,waitpid,WIFEXITED

我们可以通过调用fork创建一个新进程。这个系统调用复制当前进程,在进程表中创建一个新的表项,新表项中的许多属性与当前进程是相同的。新进程几乎与原进程一模一样,执行的代码也完全相同,但新进程有自己的数据空间、环境和文件描述符。fork和exec函数结合在一起使用就是创建新进程所需要的一切了。#include pid_t fork(void);在父进程中的fork调用返回的是新的

2015-09-16 14:45:19 794

原创 exec函数族

exec函数族提供了一个在进程中启动另一个程序执行的方法。它可以根据指定的文件名或目录名找到可执行文件,并用它来取代原调用进程的数据段、代码段和堆栈段,在执行完之后,原调用进程的内容除了进程号外,其他全部被新的进程替换了。另外,这里的可执行文件既可以是二进制文件,也可以是Linux下任何可执行的脚本文件。在Linux中使用exec函数族主要有两种情况:● 当进程认为自己不能再为系统和用

2015-09-16 10:54:14 609

原创 Linux文件锁和fcntl系统调用

1.Linux 中的文件锁Linux 支持的文件锁技术主要包括劝告锁(advisory lock)和强制锁(mandatory lock)这两种。此外,Linux 中还引入了两种强制锁的变种形式:共享模式强制锁(share-mode mandatory lock)和租借锁(lease)。在 Linux 中,不论进程是在使用劝告锁还是强制锁,它都可以同时使用共享锁和排他锁(又称为读锁和写锁)

2015-09-10 18:27:24 2128

原创 系统调用read,write和标准库fread,fwrite的区别

read,write属于Linux系统调用,fread,fwrite属于C语言标准库使用系统调用会影响系统的性能。与函数调用相比,系统调用的开销要大些,因为在执行系统调用时,Linux必须从运行用户代码切换到执行内核代码,然后再返回用户代码。减少这种开销的一个好方法是,在程序中尽量减少系统调用的次数,并且让每次系统调用完成尽可能多的工作。例如,每次读写大量的数据而不是每次仅读写一个字符。

2015-09-10 11:14:57 4364 2

原创 Linux应用程序应该存放在什么位置

Linux应用程序通常存放在系统为之保留的特定目录中。系统为正常使用提供的程序,包括用于程序开发的工具,都可在目录/usr/bin中找到;系统管理员为某个特定的主机或本地网络添加的程序通常可在目录/usr/local/bin或/opt中找到。系统管理员一般喜欢使用/opt和/usr/local目录,因为它们分离了厂商提供及后续添加的文件与系统本身提供的应用程序。一直保持以这种方式组织文件的

2015-09-09 11:19:33 15332

原创 Windows安装Apache后的一些设置

Windows在开启防火墙后让其他电脑ping通本机1.打开控制面板 - 系统和安全 - Windows防火墙 - 高级设置 - 入站规则2.找到文件和打印机共享(回显请求 - ICMPv4-ln)2个,ipv4的3.右键启用规则就可以ping通了局域网无法通过192.168.x.x的方式访问服务器(403)1.打开控制面板 - 系统和安全 - Windows防火墙 -

2015-09-01 18:10:27 371

原创 wamp下Apache2.4.x局域网访问403的解决办法

找到这个标签将Require local改成Require all granted重启wamp即可

2015-09-01 17:47:08 2900

原创 Windows下编译并使用libcurl.lib静态库

1.下载最新版的libcurl,我的是curl-7.44.0.zip,解压,进入目录winbuild,仔细阅读BUILD.WINDOWS.txt这篇文档打开VS2013 开发人员命令提示并执行nmake /f Makefile.vc mode=static VC=12完成编译后libcurl静态库会出现在builds目录下包括头文件和libcurl_a.lib,我们需要的是builds

2015-08-26 10:09:12 17655

原创 Qt:Invalid parameter passed to C runtime function.

Qt调用C语言接口出现提示Invalid parameter passed to C runtime function.原因是调用函数的时候传递了空指针

2015-08-20 18:36:14 19274

原创 Ubuntu个人目录中文改成英文

终端输入:export LANG=en_USxdg-user-dirs-gtk-updateexport LANG=zh_CN.UTF-8

2015-08-17 15:49:53 729

原创 libcurl实现断点续传

实现断点续传主要就是通过curl_easy_setopt设置好CURLOPT_RESUME_FROM_LARGE属性完成首先获取已下载文件大小,然后设置CURLOPT_RESUME_FROM_LARGE属性,从指定字节开始下载// Get the local file size,return -1 if failed_off_t getLocalFileLength(string pat

2015-08-05 18:41:31 8269

原创 libcurl获取下载进度百分比,下载速度,剩余时间

如果希望获取下载或者上传进度相关信息,就给CURLOPT_NOPROGRESS属性设置0值int ret = curl_easy_setopt(easy_handle, CURLOPT_URL, "http://speedtest.wdc01.softlayer.com/downloads/test10.zip");ret |= curl_easy_setopt(easy_handle, C

2015-08-05 18:32:50 14992 2

原创 libcurl使用HTTP的get请求来下载文件

首先设置好下载链接int ret = curl_easy_setopt(easy_handle, CURLOPT_URL, "http://speedtest.wdc01.softlayer.com/downloads/test10.zip");然后设置CURLOPT_WRITEFUNCTION属性保存接受的数据ret |= curl_easy_setopt(easy_handle,

2015-08-05 18:14:10 2953

原创 libcurl的C语言接口使用过程

全局初始化libcurl使用之前必须执行全局初始化,而且只能执行一次。使用easy interface为了使用easy interface,必须创建一个easy hadle。CURL *easy_handle = curl_easy_init();通过curl_easy_setopt来设置handle的属性设置请求链接来下载资源ret = curl_easy

2015-08-05 17:57:53 3522

原创 C/C++是怎么通过宏定义来判断操作系统的

详见Qt的qglobal.h我们写C/C++代码时也可以参考这个来确定所在平台/* The operating system, must be one of: (Q_OS_x) DARWIN - Darwin OS (synonym for Q_OS_MAC) SYMBIAN - Symbian MSDOS - MS-DOS and Win

2015-08-05 11:11:32 10445

原创 Xcode小技巧

选中代码,点击右键选择Structure->Re-Indent,代码将会自动缩进command+[和command+]将光标所在行代码向左或向右缩进esc键使用代码自动补全功能File->Create Snapshot创建一个快照,之后可以随便修改代码,随时返回到这个快照的时间点选中一个单词,点击Edit->Refactor->Rename来重命名变量,类名等File->Ope

2015-08-05 00:46:33 520

转载 C/C++内存泄漏及检测

“该死系统存在内存泄漏问题”,项目中由于各方面因素,总是有人抱怨存在内存泄漏,系统长时间运行之后,可用内存越来越少,甚至导致了某些服务失败。内存泄漏是最难发现的常见错误之一,因为除非用完内存或调用malloc失败,否则都不会导致任何问题。实际上,使用C/C++这类没有垃圾回收机制的语言时,你很多时间都花在处理如何正确释放内存上。如果程序运行时间足够长,如后台进程运行在服务器上,只要服务器不宕机就一

2015-07-31 11:53:14 1129

转载 Thinking In Linux C/C++字节对齐详解

一.什么是字节对齐,为什么要对齐?现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特 定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。对 齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能

2015-07-31 11:43:25 546

转载 大小端问题

大小端问题    最近工作中,有两次遇到大小端问题,所以花时间写这篇日志,总结一下。1.      实际需求         (1) 前段时间写了一个修复损坏的gzip文件的tool,在Linux Server上编译运行没有问题。但是在Solaris Server上运编译运行,结果总是和预期的不一致,跟踪发现是由大小端问题导致的;        (2) 最近在写

2015-07-31 11:40:20 561

原创 Mac OS X设置PATH环境变量

1.export PATH=$PATH:/xxx/bin这种方法属于临时改变环境变量,关闭终端后PATH还是以前未修改过的2.sudo vim /etc/paths这种方法改变全局环境变量。每一行代表一个路径,在最后一行上添加上你的路径,可以把文件夹直接拖到终端,注意最后不要出现空格,不然会失效。然后重启终端,echo $PATH可以看到路径已经添加上了

2015-07-30 11:21:27 3534

空空如也

空空如也

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

TA关注的人

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