如何让OS X系统的堆栈高亮显示文件?
你是否想让你的dock上的堆栈有这样的效果?其实lion早就预置了这个效果,只是没有打开,现在我们来手动打开它:
首先打开“终端”(应用程序->实用工具),然后输入以下命令:
defaults write com.apple.dock mouse-over-hilite-stack -bool TRUE;killall Dock
这时候可能系统会稍微卡顿几秒,然后重新点开堆栈,看吧!鼠标滑过,漂亮的高亮显示。
如果你想关闭,就在终端中输入:
defaults delete com.apple.dock mouse-over-hilite-stack;killall Dock
以上内容整理自这里。
《C程序设计》真的不是一本好书⋯⋯
继续读着我这本《C程序设计》,就是谭浩强的那本,第三版。我买的还是正版呢,真是不知道为什么网上那么多人推荐这本书,天!
那个关于void main()的惊天错误我就不再做多吐槽了,,,
话说今天做练习,果断发现了个错误。
就在书的89页,练习习题4.5,他的题里的例子是这样的:
- #include<stdio.h>
- int main(void)
- {
- int a = 5,b = 7;
- float x = 67.8564,y = -789.124;
- char c = ‘A’;
- long n = 1234567;
- unsigned u = 65535;
- printf(“%d%d\n”,a,b);
- printf(“%3d%3d\n”,a,b);
- printf(“%f,%f\n”,x,y);
- printf(“%-10f,%-10f\n”,x,y);
- printf(“%8.2f,%8.2f,%.4f,%.4f,%3f,%3f\n”,x,y,x,y,x,y);
- printf(“%e,%10.2e\n”,x,y);
- printf(“%c,%d,%o,%x\n”,c,c,c,c);
- printf(“%ld,%lo,%x\n”,n,n,n);
- printf(“%u,%o,%x,%d\n”,u,u,u,u);
- printf(“%s,%5.3s\n”,”COMPUTER”,”COMPUTER”);
- return 0;
- }
printf(“%ld,%lo,%x\n”,n,n,n);
看见了吧看见了吧!哼哼⋯⋯ 声明部分n 明明是long型,后面的输出到了x那里l就没了!就那么刷的没了!!!
= =我说怎么gcc死命提示我%x不对呢⋯⋯
开始还以为自己打错了⋯⋯
怎么可以这样么!对于那些只在纸上练习c语言的筒子们,伤害多深呀~
嗯⋯⋯吐槽到此结束。
另外,你能在纸上写出程序编译后运行的结果么?
我可是先写出来再编译对照的哦~结果是~全对!啊哈哈
手把手教你科学上网系列之三:MAC OS X篇
其实这篇才是咱的重点,另外,在os x下是有图形界面的哦~
好了, 直接开讲。
首先,到这里下载源码这个软件叫做GoAgentX,是专门为在OS X上使用goagent用户开发的哦
当然,编译需要用到Xcode,由于大多数筒子并没有下载这个巨型的软件,我为大家编译好了,用的是Xcode4.0
大家直接下载就好。下载解压后将app文件直接拖放到应用程序里面就好。然后双击启动。
这里值得一提的是如果你使用了lion自带的防火墙,可能每次使用都会被提示,,这也是我测试的时候遇到的一个比较麻烦的问题。因为开发者只给出了源码,使用软件只能自己编译,我又没有签名,so。。。。,最后,我建议大家关掉那个苦逼的自带防火墙吧,lion自带防火墙是多么2!推荐第三方防火墙little snitch。
好,打开软件后先点击“服务配置”然后在下面选择“goagent服务端”
然后填入appid,用|分隔,“|”输入的方法是shift+回车键上面那个按键:)
用户名就是谷歌帐号,也就是谷歌邮箱的地址,密码就是谷歌帐号的密码。
输入完成后先不要急着动,打开Finder,选择“前往”-“文件夹”然后输入下面的地址进入。
/Applications/GoAgentX.app/Contents/Resources/goagent
在打开的文件夹里找到proxy.ini,双击编辑。
上图是windows下的编辑截图,mac下同样适用,找到[age]的appid=
然后将“goagent”换成你刚才在goagentX里输入的那几个appid,同样用|分隔,算了,你就直接复制过来就好了= =。
值得注意的就是不必要把里面的空格弄没了。然后关闭就好。
接下来回到软件界面,点击“状态”。然后在左侧的下拉菜单中选择第二个,然后点击启动来上传配置文件。
耐心等待上传成功,然后再点击服务配置,在下面选择goagent选项卡,继续填写appid,恩,你刚才没有复制别的东西的话就直接command+v就好啦哈哈。(如果刚才没有复制,那就耐心输入吧,同样用|分隔),本地端口就写8087即可,服务密码同样无视掉,连接模式就选择http,服务器cn,代理服务器不要打勾,下面不要动即可。
配置好后再次回到“状态”,下拉菜单选择第一个,也就是“goagent”,点击启动。这样,就完成了。
接下来我们再说说“其他设置”
按照上面截图,所有的勾都打上,然后下载这个pac文件备用
再次打开Finder,前往-文件夹,输入
/Applications/Safari.app/Contents/Resources/
将那个pac文件拖放到这里,可能你需要输入电脑密码来鉴定。
总之复制进去后,在软件的地址栏里输入这个地址。
file://localhost/Applications/Safari.app/Contents/Resources/autoproxy.pac
然后点击状态栏上的图标,点击“正在运行,端口8087”来关闭服务,然后再点击之重新开启。
这样,你就可以在safaril里畅享智能代理带来的快感啦!
而且开机自动启动!
手把手教你科学上网系列之二:windows平台配置篇
嗨大家好,前面我们已经注册好了appid,为什么没有设置那个16位密码呢?因为咱们不是很需要那么大的安全,反正你的谷歌帐户也不用来做什么机密的事情呗!总之,我是没有弄的。哈哈
好了,现在,咱们来配置你的pc电脑上网。
首先,来下载需要的文件。官方的话是这里这个是1.8.4稳定版,如果打不开的话,就下载我这里备份的吧!
下载好了以后,就把goagent文件夹解压出来,放在C盘或者D盘的根目录吧!方便查找呵呵。
然后打开目录下的local文件夹,找到里面的proxy.ini这个文件,直接双击就会出现记事本编辑界面啦。
找到[gae]下的appid=
将后面的goagent换成你自己之前记录的appid,如果是多个,记得要用竖线“ | ”隔开哦!如果不知道是哪个按键,就复制我这里的啊哈哈||||||||||||||||||这么多,随便选一个吧:)还有就是不要顺手把里面的空格删掉了就好。修改完成了,就保存关闭吧。
接下来,我们打开goagent文件夹下local文件夹旁边的server文件夹,找到里面的upload.bat,点击右键选择以管理员身份运行,(双击应该也可以啦)
出现上面这个对话框,然后根据提示输入你的appid,同样如果有多个,就用“|”分隔(这下,我想你还得去找找在键盘上怎么输入“|”了,其实这个按键就在回车键上面,上档键(shift)+回车上面那个键就是了。)
输入完按回车键,然后会提示输入邮箱地址,这个地址就是你注册的谷歌帐号,也就是gmail的邮箱啦,再回车,就要求输入密码,因为我们没有设置烦人的16位密码,就输入设置好的谷歌帐户密码即可:),值得注意的是:在输入密码的时候,界面是没有显示的,你输入了什么,不会在屏幕上显示,只有你自己和程序知道:)
按回车后程序就会自动上传配置文件,大家就安心等待吧。
上传完成后,每次要科学上网,就打开local文件夹下的goagent.exe即可。
好了,使用第三方浏览器的筒子们请等待后面的教程。
手把手教你科学上网系列之一:注册appid
可能是今天我在人人上发的状态太有诱惑力,搞得大家都在问我科学上网的问题。。so,我也就来整理个教程把!其实这个不是什么高深的技术也不是什么秘密,恰恰相反,我用的这个方法还是网络上挺火的方法。至于原理,它是基于GAE应用,你可以参照这个图来理解。(点击查看大图)
我们就基于这个原理,在本地搭建代理服务器罢了。然后使用一个软件,叫做goagent。大家也可以去谷歌搜索一下试试看。会有很多信息。
这一类的教程有好多好多,都写的十分详细,所以重复的地方我就不再过多赘述,直接引用了,嘿嘿,小小的偷个懒,不过源网页我会给出链接,算是大家的参考。
另外,这个方法是跨平台的,我会逐步写出各个平台的配置方法!
好了,不多说 了,开始今天的第一步吧!
注册appid
首先,你得去申请Google App Engine(GAE)账号(其实就是申请Gmail账号,两者通用,如果有可以直接用。)
这些截图来自http://maolihui.com,源网页在这里。
打开链接后应该是这个样子啦
就像我刚才说的,没有的点击注册,去注册谷歌帐户,如果有了,就直接登陆。
对于没有谷歌帐户的筒子,现在谷歌推出了新政策,强制注册google+,反正就如实填写吧,手机写自己正在用的,邮箱也要写正在用的(qq邮箱也行)因为完成后会有验证邮件的。另外说一句,如果过程中要求手机短信验证神马的,如果页面没有标注会收费,那就一定是免费的。:)
总之,拥有了一个帐户并且登陆后,我们继续。点击Creat an Application
接着输入你正在使用的手机号码,国家选择Other(Not Listed)就像这样:(哦对了,别忘了手机号输入后在前面加上“+86”比如说+8613800138000这个样子。)
然后点击发送,然后谷歌会发来短信(免费的),里面有一串数字,填上即可。
点击send后,Google App Engine账号即被激活,然后就可以创建新的应用程序了。页面会自动转入“My Applications”页面,点击“Create an Application”新建应用,如下图:
然后就按照下面的解释来填写应用的信息:
在上图中第一处添加一个应用名称,如123abc验证一下是否可用,如果通过那么123abc就是你的Appid(一定要记住这个id!我的建议是新建一个文本文档,然后把每一个id都复制进去哈哈。值得注意的是,创建多个id,id必须是唯一的,不可重复。),而123abc.appspot.com就是你的应用服务器地址了。第二个空格就是给你的应用取个名字,可以随便填,最后点击提交按钮,如果能看到下图这个页面,就说明你成功创建了一个新的应用
至此,你已经完成了一个应用的申请,现在强烈建议不要关闭网页,转到http://appengine.google.com页面,再重复几次,我个人申请了六个,最多10个你也可以都申请的。记住一定要把应用的id记下以备用!
好今天的教程就到这里~
vim设置语法高亮后有时无效
我学习c语言编程并没有用老掉牙的tc2.0,也没有用新的tc,之前是在linux下学的,学了一小段时间后放弃了。
现在再开始,实在lion下的,使用的是控制台+vi(vim)+gcc编译。
关于vi的高亮语法和首行缩进等等的设置,我前面的文章也介绍了解决办法,用起来还是挺舒心的。
但这几天使用过程中,还是出了点说不上意外的意外。就是在用vi创建文档写代码的时候有时会无法高亮代码。好奇怪,命名已经设置,但就是没用,再三检查配置文档也无效。
但是保存关闭后再次打开又能用了,后来自习比对,终于叫我找到了原因——我还真是2啊!
原因是lion祖上是unix,和linux某些特性是一样的,因为它们祖上都是unix,比如说这个文件的后缀问题!
很多时候在linux上是没有后缀的,你写个c语言代码不加人和后缀甚至胡乱加个后缀gcc都能给你编译⋯⋯但是vi它不认识啊,它得靠后缀猜你文档将要写什么语言的代码,才能高亮⋯⋯
so,不加后缀,vi果断不高亮,权当扑通文档处理了。然后保存,再打开,它可能是根据内容分析,发现是c语言代码,所以就又高亮了⋯⋯汗死。
vi program
这样打开一个空文档,vi就果断不高亮
vi program.c
这样打开,才有哦
= =不知道有没有新手和我犯同样的2
哈哈
如何学好C语言
今天上网无聊搜文章,找到这篇,很不错,酷壳网,嗯,,转帖以收藏。原文链接在此。
我相信,这可能是很多朋友的问题,我以前也有这样的感觉,编程编到一定的时候,发现能力到了瓶颈,既不深,也不扎实,半吊子。比如:你长期地使用Java和.NET ,这些有虚拟机的语言对于开发便利是便利,但是对于程序员来说可能并不太好,原因有两个:
- 虚拟机屏蔽了操作系统的系统调用,以及很多底层机制。
- 大量的封装好的类库也屏蔽了很多实现细节。
一段时间后,你会发现你知其然,不知所以然。。我以前在CSDN上写过一篇《Java NIO类库Selector机制解析(上,下,续)》,在那篇文章中我说提到过(有讥讽的语气)Java的程序员不懂底层实现,所以很难把技术学得更扎实。此时,一部分程序员会不自然地想学学底层的技术,很自然的,C语言就被提了上来。
下面是我给这位朋友的一些建议:
- 鼓励并为你叫好。我鼓励你想要去学C语言的想法和精神,很多人都觉得C语言好学,其实并不然。(你可以看看《C语言的迷题》)现在的这个社会更多地去关注那些时髦的技术,而忽略了这个流行了40+年的C语言。一门技术如果能够流行40多年,这才是你需要去关注和学习的技术,而不是那些刚出来的技术(过度炒作的技术,Windows编程史)。这才是踏踏实实的精神。
- 不要找借口。这一条路走下来并不容易,不要给自己找借口。我最不喜欢听到的就是“很忙,没有时间”这样的借口。我以前在银行做项目,早9点到晚10点,周一到周六,我一样可以每天抽1个小时来看书和专研,一年下来也能精读5、6本书。我现在的工作项目和招聘任务很紧张,刚生的小孩只有自己和老婆两人带,还需要准备讲课,但是我还是能够找到时间看文章写文章维护酷壳。所以,我可以告诉你,“时间就像乳沟,只要你肯挤,就一定会有”。
- 学好C语言和系统编程。我认为,学好编程有四个方面:语言、算法和数据结构、系统调用和设计。
- 语言。我可以告诉你C语言有两大主题你要好好学,一个是内存管理,一个是指针!这个世界上90%以上的C/C++出的严重性错误全是和这两个有关。不要看谭浩强的那本书,那本是本烂书。推荐这本书给你《C程序设计语言(第2版·新版)》
- 算法和数据结构。我认为,用C语言实现算法和数据结构莫过于最爽的事情。推荐你看这本书——算法:C语言实现(第1~4部分)基础知识、数据结构、排序及搜索(原书第3版),还有那本经典的《算法导论》
- 系统编程。Windows下推荐两本书——《Windows 程序设计 》和《Windows核心编程》,Unix/Linux下推荐两本书——《Unix高级环境编程》和《Unix网络编程卷1,套接字》《Unix网络编程卷2,进程间通信》尤其是《Unix网络编程》这本书,一通百通,无论Windows还是Unix/Linux,都是一样的。
- 系统设计。关于设计方面,我全力推荐《Unix编程艺术》,看完以后,你就明白什么是真正的编程文化了。然后,当你看到Windows的Fans的某些言论时,你就知道什么叫一笑了之了。
如果你能在2-3年内精读完这些书,并全部融会贯通,那么你就明白什么是一览众山小的感觉了!我足足花了5年时间才算是真正全部读完这些书的。最后,祝你好运!努力!
——-更新:2011/03/29 20:00——-
我想,这篇文章主要想告诉大家这么几件事:
- 编程编到一定时候,你就需要了解底层系统的机制,否则,知其然不知所以然。
- 我没有否定非C的程序员的逻辑,真正的逻辑是——如果你想要了解底层机制,请学习C语言和操作系统。
- 40多年的Unix/C影响深远。包括影响了Windows。如果你想一通百通,一定要了解Unix。那是计算机文化真正的根。
- 不要肤浅地去思考问题。比如,不要以为一个DBA就不会考虑数据库引擎的内存页面的问题。也不要以为Web程序员就不需要了解后台的服务器和脚本的运行性能以及TCP/IP的问题。
高手往往都是有很强的系统的基础知识的,表面的东西永远是肤浅的。
写一写vi吧!在OS X lion下学编程。
这几天开始学习c语言编程了,作为所有程序员推荐的入门语言,看着《c程序设计》我依旧是感到亚历山大呵呵。这本书应该不是最好的教程吧,不过我手头正好有这本书和相应的指导,就将就着看了。
我是在lion下学习编程的,所以直接下了Xcode,哦,当然我果然不会用。。。。汗
后来经推荐,还是用回了vi+gcc的老方法,而且似乎这样是很多高手们的使用方法啊哈哈~咱也显得高深嘛。
然后vi编辑,好在我以前一直用linux发行版,所以vi无压力了,至少基本操作还是没有问题的,但用来编程,还是得稍微个性化一番。
下面我就直接提供代码了,直接用vi在用户目录创建.vimrc就好。
然后按 i 变为插入模式,然后粘贴进下面的代码
"這個檔案的雙引號 (") 是註解
set hlsearch "高亮度反白
set backspace=2 "可隨時用倒退鍵刪除
set autoindent "自動縮排
set ruler "可顯示最後一行的狀態
set showmode "左下角那一行的狀態
set nu "可以在每一行的最前面顯示行號啦!
set bg=dark "顯示不同的底色色調
syntax on "進行語法檢驗,顏色顯示。
|
这些代码来自鸟哥的私房菜。
另外,说说vi和vim的关系,vim是vi的扩展吧,一般这样理解就好了,另外,所有unix系统都会有vi,而且更多时候,vi都映射了vim,即vi=vim
Xcode 4.3 with NO GCC!?
终于咱鼓起勇气再次拿起《c程序设计》,安装完xcode后却发现居然没有gcc等一系列东东,,,郁闷,上网谷歌之,得解
解决方法是Preferences > Downloads > Command Line Tools > Install
呵呵,因为找到了遇到相同问题的朋友,他的原文在这里,还有另外的解决办法。
如何解决iphone不能拍照故障
Iphone不能拍照也是很常见的软件问题,如果你遇到这样的问题不妨这样解决:
用91手机助手的文件管理功能,定位到/private/var/mobile/Media目录,找到DCIM目录,在此目录上点击右键,选择属性,然后更改用户为mobile,权限为777,并勾选底部的“将更改应用于该文件夹、子文件夹和文件”前面的勾后,再按确定,然后重启您的iPhone让后看看你的手机能不能拍照,要是还是不能解决问题,建议你重新刷机,要是还是解决不了,那就有可能是硬件的问题了
我是按照上面的方法解决的。把权限改称777确实可以。
另外,修复之后我想到,或许也可以用sbs里的修复权限吧⋯⋯不过问题既然已经修复就不再测试了⋯⋯
毕竟,我的3g老了⋯⋯
最后,方法参考自这里
















近期评论