2011年10月10日星期一
安卓手机用户,gmail无法使用了,我们该怎么办 fanqiang
2011年8月25日星期四
C语言经典面试题总结:链表的初始化,建立,插入,查找,删除
单链表的初始化,建立,插入,查找,删除。
http://www.cnblogs.com/newwy/archive/2010/10/10/1847456.html
双链表的初始化,建立,插入,查找,删除。
http://www.cnblogs.com/newwy/archive/2010/10/10/1847458.html
2011年8月22日星期一
2011年8月9日星期二
U盘量产教程(以Kingston DT 101 G2 16g为例)
U盘量产教程(以Kingston DT 101 G2 16g为例) 很多朋友都有U盘,但是又很少有人明白何为U盘量产。 U盘量产 是指批量对U盘主控芯片改写数据,如 ,写生产厂商信息、格式化等操作。而现实中,水货U盘,或者需要制作带CD-ROM盘的U盘,方便U盘装系统,也用到量产。
在进行U盘量产前, 需要先确定自己的U盘的主控芯片, 然后根据确定的主控芯片来选择 合适的量产工具, 现在U盘的 主控芯片的分类有:群联、慧荣、联阳、擎泰、鑫创、安国、芯邦、我想、迈科微、朗科、闪迪。这些是可以 通过软件 ChipGenius检测出的。
U盘量产的作用。 也许会有朋友问了,好好的U盘,为什么要 冒风险进行量产呢。 这个问题问出来 大部分人的 担心和疑惑。的却, 如果量产U盘,出错,比如 错误的量产工具,或者操作失误,都会造成U盘的 损坏, 或者 无法正常使用。 但是 如果你在初次量产U盘的时候, 能够按照操作指南,仔细的来,这些错误还是可以避免。说一下 量产的 作用吧, 首先就是:分区功能:把一个U盘分成数个移动盘,更改U盘介质类型(Fixed 和 Removabel);启动功能:使U盘能模拟USB-CDROM、USB-ZIP、USB-HDD等,做启动盘。这算是U盘DIY的高级玩法。加密功能:在U盘里划出专门的加密分区。下面 以 市面上最常见的 Kingston U盘 为例来说明一下。
2011年8月7日星期日
Centos下minicom的设置
设置putty解决登录VPS终端中文乱码
centos Linux系统如何修改分辨率
centos系统如何修改分辨率, Linux系统如何修改分辨率。可能现在很少有人还在用centos 当桌面系统, 因为centos 是专业提供服务器版适用版本的一款Linux发行版,其以稳定和高效著称, 但稳定也就意味着,系统和软件的更新的非常的慢。
2011年8月6日星期六
C语言经典笔试题汇总
2011年7月23日星期六
ubuntu 10.04 NFS server 配置
Ubuntu上默认是没有安装Ubuntu nfs服务器的,因此我们首先安装Ubuntu nfs服务器端:$sudo apt-get install nfs-kernel-server
在一些文档中,提出还需要使用apt-get来手动安装nfs的客户端nfs-common,以及端口映射器portmap,但其实这是没有必要的,因为在安装nfs-kernel-server时,apt会自动为我们把它们安装好。
2、配置/etc/exports
Ubuntu nfs允许挂载的目录及权限在文件/etc/exports中进行了定义。
例如,我们要将根目录下的rootfs目录共享出来,那么我们需要在/etc/exports文件末尾添加如下一行:/rootfs *(rw,sync,no_root_squash)
其中:/rootfs是要共享的目录,*代表允许所有的网络段访问,rw是可读写权限,sync是资料同步写入内存和硬盘,no_root_squash是Ubuntu nfs客户端分享目录使用者的权限,如果客户端使用的是root用户,那么对于该共享目录而言,该客户端就具有root权限。
其它Ubuntu nfs常用的参数有:
ro 只读访问
rw 读写访问sync 所有数据在请求时写入共享
async nfs在写入数据前可以响应请求
secure nfs通过1024以下的安全TCP/IP端口发送
insecure nfs通过1024以上的端口发送
wdelay 如果多个用户要写入nfs目录,则归组写入(默认)
no_wdelay 如果多个用户要写入nfs目录,则立即写入,当使用async时,无需此设置。
hide 在nfs共享目录中不共享其子目录
no_hide 共享nfs目录的子目录
subtree_check 如果共享/usr/bin之类的子目录时,强制nfs检查父目录的权限(默认)
no_subtree_check 和上面相对,不检查父目录权限
all_squash 共享文件的UID和GID映射匿名用户anonymous,适合公用目录。
no_all_squash 保留共享文件的UID和GID(默认)
root_squash root用户的所有请求映射成如anonymous用户一样的权限(默认)
no_root_squas root用户具有根目录的完全管理访问权限
anonuid=xxx 指定nfs服务器/etc/passwd文件中匿名用户的UID
anongid=xxx 指定nfs服务器/etc/passwd文件中匿名用户的GID
3、Ubuntu nfs重启服务
$sudo /etc/init.d/portmap restart
$sudo /etc/init.d/nfs-kernel-server restart
4、测试Ubuntu nfs
此时可以运行以下命令来显示一下共享出来的目录:
$showmount -e
在其他的机器的终端中输入 showmount -e NFS-SERVER-IP 会显示你 NFS-SERVER的共享. 如果要挂载共享分区的话可以使用这个命令:
mount -t nfs NFS-SERVER-IP:/rootfs /mnt
上面的命令中, NFS-SERVER-IP 为 NFS server 的ip; /rootfs 是NFS-server 共享的分区; /mnt 是当前设备将要挂载 NFS共享分区的挂载点.
可以运行df命令查看是否挂载成功。查看后可以使用以下命令卸载:
$ sudo umount /mnt
2011年7月8日星期五
青春,广播,与岁月
从虾米上找到许美静的 “听那星光歌唱”,听着那熟悉的旋律,“蓝蓝的风儿 柔缓的夜晚 茫茫人海 有谁被遗忘 远远的城市 最爱的人遥遥相望 同一个穹苍。。。” ,那种柔和悠远的意境,勾起心中的关于中学时的记忆。 青春期时的自己,有一点孤僻不合群,因为颜涛的今晚真好,让自己开始习惯在深夜里听广播,写日记,享受夜的安静。。还记得她每次都提及的taotaotalk 的邮箱,以及郑花路18号。。。 现在想想,感觉十年真的很短,但是又很漫长。。。十年里中,我经历了中学和大学最美好的时光。 如今的我离开了的自己的故乡,来到了北京,在这个陌生的城市里,为了自己的梦想,每天去面对新的挑战 ,渐渐的淡去了青春的那种忧伤。。但那仍是心里最真挚的回忆与感情。。
2011年7月2日星期六
诚征博客好友交换链接
1. 首先必须是个人博客,否则免谈, 最好是和科技以及网络相关的。
2.不要求pr, 只需百度和Google 已经收录。
3.要求最少一个月有一次更新。
有意者可以在本文下留言,留下博客域名,我会去你的博客回复你。
2011年6月2日星期四
Linux 下的C语言代码排版工具
下面是我的两个配置文件。
----------------------------------------------------
~.vimrc 的配置参数有
set runtimepath+=~/vimfiles
"set nowrap
set nocompatible
set showcmd
set modelines=5
au GUIEnter * simalt ~x
set guioptions+=t
set guioptions-=T
set so=4
set number
set tabstop=8
set softtabstop=8
"colorscheme ps_color
set nowritebackup
set autoindent
filetype plugin indent on
set backspace=indent,eol,start
set foldmethod=indent
set foldlevel=9999
"set list
set listchars=tab:>-,trail:.,extends:>
set suffixes+=.pyc,.pyo
set shiftwidth=8
set showmatch
set ignorecase smartcase
set incsearch
"set cin
set cino=:0,g0,u0,(0,W4
set fileformat=unix
set ruler
"set visualbell
set iskeyword+=.
set laststatus=2
set fo-=at
syntax on
---------------------------------------
~.indent.pro
-nbad -bap -bbo -nbc -bl -bli0 -c33 -cd33 -ncdb
-cp33 -cs -d0 -di1 -nfc1 -nfca -hnl -i4 -ip0 -l75 -lp -npcs
-nprs -npsl -saf -sai -saw -nsc -nsob -nss
-----------------------------------------------
2011年5月18日星期三
linux 下java 程序中文乱码方块字的解决办法
其实,linux 下java 程序的中文乱码,也就是有些字体能够显示出来,但是有些字体显示是方块的问题, 根本在与jre 的环境中缺少中文字体库造成的。。。 现在把我自己的解决方法总结一下。。。
首先说一下我的平台, 我使用的 ubuntu 10.04 默认安装了open-jdk , 因为兼容性和习惯的问题。。我又重新安装的sun java
首先 如果你使用的也是 UBUNTU 的10.04 以及以后的版本的话, 需要添加 sun java 的源
sudo add-apt-repository "deb http://archive.canonical.com/ubuntu maverick partner"
然后更新系统
sudo apt-get update
然后安装
apt-get install sun-java6-bin sun-java6-jre freemind
最后一个freemind 是我要安装的一个依赖java的程序。
在安装结束后,需要 设置默认的java
sudo update-alternatives --config java
这时电脑会列出你的机子上已经安装的java版本, 选择对应的版本。
在这里我选择 sun java 6
然后修改环境变量
vim .bashrc # 增加下述export JAVA_HOME=/usr/lib/jvm/java-6-sun
export CLASSPATH=$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$PATH
----------------
接下来就是 在jre 环境下添加中文字体了。。
首先
cd /usr/lib/jvm/java-6-sun/jre/lib/fonts/
如果没有fonts 目录,需要你自己建立,
然后建立fallback 文件夹
sudo mkdir fallback
然后进入fallback 文件夹(网上的好多版本都没有提到进入fallbak 文件夹,误导了很多人。。。)
接下来你需要看你的本地的机子上都安装有什么字体库,一般的字体都安装在, usr/share/fonts/truetype/ 文件夹下,
如果你本地没有中文字体,可以去ubuntu 软件中心 去安装, 直接搜索ttf 就可以搜索到很多, 比如 Ukai, UMing, 如果安装后你知道不到字体,
可以通过 locate 命令来查找
可以线通过sudo ln -s /usr/share/fonts/truetype/wqy/wqy-zenhei.ttc wqy-zenhei.ttc 先建立软链接, (前提是你已经安装了对应的字体,不一定是zenhai.ttc)
然后, sudo mkfontdir ,sudo mkfontscale
, 如果你在做了上述后还是没有解决的话,可以直接将字体, 比如,UMing.ttc 直接拷贝到fallback 文件夹下去。
-----------------------------------------------
哎,总算把困扰好久的java程序方块字的难题给解决了, 如果你按照我的方法做了, 还没有解决,欢迎留言,
2011年5月17日星期二
Linux终端模式常用软件
以下列出我所知道的一些常用 CLI 软件,仅供参考。
- 中文终端。据我所知,目前主要有两个解决方案:zhcon 和 fbterm。两个我都用过,zhcon 较长时间不更新了,问题比较多。不小心加错参数,甚至可能会导致死机。所以我推荐 fbterm,这个还是很不错的,要使用的话,必须开启 framebuffer。虽然某些方面也有些瑕疵,不过就目前而言,应该算是一个比较好用的中文终端了。有人可能会问:“中文输入怎么解决?”嘿嘿,这个倒不用担心。比较简陋的有 fbterm_ucimf,另外还有基于 ibus 的 ibus-fbterm 可供选择。
- 多窗口管理神器:tmux。功能和 screen 差不多,不过我感觉 tmux 更加强大、友好!可以横着切、竖着切窗口。让你充分利用你的屏幕!实乃远程管理、多任务控之必备神器啊!具体介绍请猛击这里围观。
- 文件管理器:vim 风格的可以选 ranger,另外还有 mc 之类的。
- 任务管理器:htop。这个可以理解为 top 的加强版。
- 音乐播放器:moc。这个用来播放 mp3,wma,flac 等常见音频文件还是不错的,但是不支持 ape 和 cue。如果这类文件比较多的,那就只能另寻他方了。cmus 也不支持 ape。
- 视频播放器:mplayer。说这个之前,我想咆哮几句:是谁说 Linux 终端下只能用字符方式看视频啊!!!!是谁说在终端下看视频纯属找虐 啊!!!!!乃们这是误人子弟啊!!!!有木有听说过 framebuffer!!!!有木有!!!!有木有听说过 fbdev 输出!!!!!有木 有!!!!!! 我以前被人误导,也一直认为在 tty 终端下只能以字符方式看视频,但是直到有一天,我无意中了解到了有 framebuffer 这个东东!!!!无意中看到 mplayer 的视频输出里有 fbdev!!!!于是在开启了 framebuffer 的 tty 下。 mplayer -vo fbdev2 “我要看的视频” 我看到了神马?!我看到了一个清晰的带颜色输出的视频,竟然和在图形界面下播放时的质量差不了多少!!!!有木有看到!!!有木有!!!!
- PDF/图片查看器:fbida。fbida 里面包含了fbi,fbgs,ida,exiftran 四个应用。其中 fbi 可以用来查看图片(FBI啊,名字就很牛X),fbgs 可以用来查看 PDF。前提嘛,估计各位看软件名就知道了,必 须开启 framebuffer。
- 截图工具:fbgrab。不废话,看官方说明:fbgrab – takes screenshots using the framebuffer。在桌面环境下可以用scrot这个命令行软件截屏。
- 文本编辑器:vim、emacs。这两个神器就不用介绍了吧?
- IM 软件:finch。这个可以看成是 pidgin 的 CLI 版。
- IRC 聊天:irssi。一个很强大的 IRC 客户端。
- 邮件客户端:mutt。有关介绍请移步 wiki。这个我基本不用。
- 浏览器:w3m、lynx。w3m 查看图片,需安装 w3m-img。
- 下载器:wget、axel、aria2c。其中 aria2c 支持 HTTP(S),FTP,BitTorrent,Metalink 协议。
- RSS 阅读器:snownews。
- Shell: zsh、bash。
- 屏幕录像:recordmydesktop。此软件可用于录制 GNOME、KDE 等桌面。
ubuntu server 10.04 无线网络设置
1、安装wpasupplicant。由于Ubuntu 10.04 Server已经集成了这个包,所以无需安装。如果是其他版本的Ubuntu Server,可以使用下面的命令进行安装:
#apt-get install wpasupplicant
2、生成无线路由密钥。这一步就是根据你无线网络的SSID和密码,来生成WLAN需要的配置文件。命令如下:
#wpa_passphrase 无线网络SSID 无线网络密码 > 配置文件名
比如你的无线网络SSID是TP-LINK,密码是123456,生成的配置文件名为/etc/wpa_config.conf,就这样输入:
#wpa_passphrase TP-LINK 123456 > /etc/wpa_config.conf
注意后面的/etc/wpa_config.conf文件名可以随意取,但是请注意不要有重名的情况产生。
3、设置无线网络。编辑/etc/network/interfaces文件,将wlan添加到其中:
#vim /etc/network/interfaces
在里面加上:
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_config.conf
注意如果你的路由器没有开启DHCP,则需要手动配置address、netmask、gateway、network和broadcast几项参数,这里不多说。另外就是wpa-conf后面跟着你刚才产生的密钥配置文件名。
如果一直不需要使用有线网络,可以连有线网络一起禁用掉,将auto eth0注释掉即可。
4、重新启动计算机。根据我实际的操作结果来看,配置好了之后虽然说无线网卡被启用了,但是驱动貌似没加载全。因此需要重启Ubuntu Server以便完整启用无线网卡。
至此,Ubuntu Server也可以用无线网卡连接到无线路由器上网了。
ubuntu 10.04设定分辨率
首先,在终端输入:
$ sudo gedit /etc/default/grub
在打开的文件最后加上一句:
GRUB_GFXPAYLOAD_LINUX=1280x800
=后面的分辨率改成你需要的。
然后保存后关闭。
再在终端执行:
sudo update-grub
重启你的电脑你就会发现登录界面又回到刚装的系统时候的样子了
2011年5月13日星期五
祝你幸福,燕姿
听燕姿的歌曲有11个年头了,伴随了我的整个成长的过程。。。 喜欢她的低调,喜欢她的勇敢。。。 更喜欢她的音乐。。。
为自己的梦想和幸福勇敢奋斗,不被约束,为自己的梦想而努力。。。
我要的幸福, 每个有梦的人, 都应该为此而坚持,努力。。。
为爱情付出 为活着而忙碌
为什么而辛苦 我仔细纪录
用我的双眼 在梦想里找路
该问路的时候 我不会装酷
我还不清楚 怎样的速度
符合这世界 变化的脚步
生活像等待 创作的黏土
幸福 我要的幸福 渐渐清楚
用我的双眼 在梦想里找路
该问路的时候 我不会装酷
我还不清楚 怎样的速度
符合这世界 变化的脚步
生活像等待 创作的黏土
幸福 我要的幸福
渐渐清楚梦想
理想 幻想 狂想
妄想我只想 坚持每一步
该走的方向 就算一路上 偶而会沮丧
生活是自己 选择的衣裳
幸福 我要的幸福 没有束缚 幸福 我要的幸福 在不远处
ubuntu分辨率设置办法
参考相关帖子:
升级显卡限制驱动后开机动画低分辨率问题(解决方案)
解决升级显卡驱动后开机动画低分辨率问题
启用受限驱动后 开机 Splash 分辨率变低的原因分析
无论是ati显卡还是nvidia显卡,在ubuntu10.04系统上启用受限驱动(或手动安装官方驱动),都会导致开机splash分辨率变低的问题。由于这问题在ubuntu10.04上很普遍,所以也就有很多牛人为我们提供了解决方法,下面是我在ubuntu中文论坛上看到的(参考上面给出的三个帖子),并且亲自试验并成功解决问题的一个整理方案。
1、安装v86d和hwinfo包,下面我们要用到。
sudo apt-get install v86d hwinfo
2、查看自己显卡支持的分辨率。
sudo hwinfo --framebuffer
None 00.0: 11001 VESA Framebuffer
[Created at bios.464]
Unique ID: rdCR.QOJHFkjgnM2
Hardware Class: framebuffer
Model: "(C) 1988-2005, ATI Technologies Inc. M92"
Vendor: "(C) 1988-2005, ATI Technologies Inc. "
Device: "M92"
SubVendor: "ATI ATOMBIOS"
SubDevice:
Revision: "01.00"
Memory Size: 16 MB
Memory Range: 0xd0000000-0xd0ffffff (rw)
。。。
Mode 0x03ee: 1366x768 (+1408), 8 bits
Mode 0x03ef: 1366x768 (+2752), 16 bits
Mode 0x03f0: 1366x768 (+5504), 24 bits
Config Status: cfg=new, avail=yes, need=no, active=unknown
3、修改/etc/default/grub文件,使用uvesafb的framebuffer来启动。
sudo gedit /etc/default/grub
把下面的两行
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
#GRUB_GFXMODE=640×480
修改为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset video=uvesafb:mode_option=1366x768-24,mtrr=3,scroll=ywrap"
(ps:其中的nomodeset禁用内核kms,个人见解)
GRUB_GFXMODE=1366x768
这个要根据第2步所查到的显卡所支持的最大分辨率(当然也可以是其他支持的分辨率)来修改,注意要把前面的#去掉。
4、修改/etc/initramfs-tools/modules文件。
sudo gedit /etc/initramfs-tools/modules
添加下面这行:
uvesafb mode_option=1366x768-24 mtrr=3 scroll=ywrap
(ps:这一步的修改与上一步中的第1处修改关联一致)
5、运行下面的命令,启用framebuffer。
echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
6、运行下面的命令,更新grub配置以及initramfs镜像文件。
sudo update-grub
sudo update-initramfs -u
7、重启。
相关问题及解决方法:
按照上述步骤操作后确实解决了开机splash分辨率低的问题,不过还有另外一个问题:无法正常使用虚拟控制台(tty1-6),即切换到虚拟控制台——“黑屏”。
确实这样修改后出现登陆不了console的情况,需要添加vga=XXX参数。
其实,这个问题应该也是使用官方的闭源驱动(或受限驱动)造成的,即不是上述的操作导致的。
相应的,上述步骤的第3步修改中添加vga=xxx参数。
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset video=uvesafb:mode_option=1366x768-24,mtrr=3,scroll=ywrap vga=792"
注意792代表的是1024×768x16M(分辨率1024×768,颜色深度24位),可根据自己的情况以及https://wiki.ubuntu.com/FrameBuffer#Setting%20different%20framebuffer%20resolutions%20in%20GRUB
修改为相应的数字。此数据必须正确,因为数字不正确,很可能导致开机画面不能显示或变形。实在没有对应数值的话,可以使用790,或者和实际分辨率较为接近的数值。
2011年5月8日星期日
北漂日记-启程
很早很早的时候,因为有些人和有些事,下定了决心要去北京. 但是时间总能抹去一切难以忘记的事情和回忆,初中,高中,很多事和很多人又从我身边檫肩而过. 后来很巧的来到了离北京很近的天津, 大学加毕业以后工作的一年, 5年的时间真的好快... 5年里有刚入大学的兴奋和悠闲,有沉迷于网络的宅男生活,更有毕业后工作的艰辛与无奈,当然最幸福的莫过于认识了现在的女友. 如今,明天我就要彻底的离开天津了,也许以后还会回来,但是,这个我已经熟悉的城市,不再有我能够蜗居的小屋了.
北京,一个年轻人向往的城市,可是对我们却并不那么友好... 生活的压力真的好大...
不知道我的北漂生活究竟会是怎么样.. 一年后的我,又会是怎么样.... 未来有很多变数, 唯一不变的是,自己对于美好生活的最求... 祝福我, 祝福我的丫头! 北京我向你奔去!
2011年4月1日星期五
Linux系统下C语言编程基础知识介绍(一篇很好的入门介绍)(转载)
最近在学C语言,呵呵,看了不少有用的东西。从博客 LFClife.cublog.cn 上看到的一篇介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将会学到以下内容:
源程序编译
Makefile的编写
程序库的链接
程序的调试
头文件和系统求助
2011年3月28日星期一
如何为ubuntu服务器设置静态IP
在本地安装调试ubuntu server , 正常在安装的过程中会有提示设置IP 和DNS,但是如果你因为其他的原因错过了,或者说是后期需要修改,该如何修改呢。 其实很简单。
Ubuntu的网络参数保存在文件 /etc/network/interfaces中,默认设置使用dhcp,内容如下:
# The primary network interface
auto eth0
iface eth0 inet dhcp
设置静态ip的方法如下:
1) 编辑 /etc/network/interfaces
1.1)将dhcp 一行屏蔽
# The primary network interface
auto eth0
#iface eth0 inet dhcp
1.2)添加和静态ip有关的参数
# The primary network interface
iface eth0 inet static
address 192.168.0.10
netmask 255.255.255.0
gateway 192.168.0.1
2)编辑 /etc/resolv.conf,设置dns
nameserver 202.96.134.133
nameserver 202.106.0.20
3)执行下面两个命令,启用新设置
$sudo ifdown eth0
$sudo ifup eth0
2011年3月26日星期六
网站域名更换的301设置
原来的哪个域名ANBIT.cn 的收录数据还是非常的好的,PR 3 百度收录的也非常的勤。 所以我打算做一下域名的重定向,以希望能够将原来域名的PR 和搜索收录转到现在的新域名上来。从网上搜索了一些。。但是因为我原理的空间使用的国内的虚拟ASP空间,如果仅仅只定义首页的话,那就只有在访问主页的时候进行301 重定向。 而且如果访客是通过搜索引擎收录的某个页面进入我原来的博客空间,则会显示404页面。 博客的虚拟空间控制面板,看到里面有自定义404页面的选项。于是就把ASP 的首页的301定向设为自定义的404. 这样,所有进入我的原来的域名的访问,都会直接301到我的博客的新域名。 但是前提是我把博客的数据全部都删除了。只留下了 一个301重定向文件 ,也就是ASP 的首页default.asp
希望自己能把自己的这个博客坚持下去。一直记录自己的历程。
2011年3月17日星期四
为什么C语言中的整型取值范围是--32768~32767,是按什么规则规定,推理的?
01111111 11111111是32767,最大的正整数
00000000 00000001是1
00000000 00000000是0
11111111 11111111是-1(不是-32767)
10000000 00000001是-32767(不是-1)
10000000 00000000是-32768(不是-0),最小的负整数
计算机表示数主要从运算方式的一致性来考虑。
比如00000000 00000001表示1很好理解,但是11111111 11111111为什么是-1呢?
按照二进制加法
11111111 11111111 + 00000000 00000001= 1 00000000 00000000
结果超出了整型的宽度,溢出部分被忽略,最后的计算机结果是00000000 00000000
那么换成十进制,?+1=0,所以11111111 11111111表示成十进制就是-1
2011年2月17日星期四
Ubuntu学习笔记之中文输入法以及中国电信3G无线网卡设置
ubuntu学习笔记之U盘安装和磁盘分区
2011年2月13日星期日
JAVA学习笔记之JDK环境变量设置详解
- 本文转载自http://developer.51cto.com/art/200907/134496.htm 本文归纳总结了JDK环境变量设置的过程。
在java私塾学习一个多月了,对于JDK环境变量设置想来却总觉得不是很清楚,总结一下自己的理解,让头脑清楚一些。
下载好的JDK是一个可执行安装程序,双击安装。将安装路径改为:C:\jdk1.6.0(当然其他路径也可以)。
JDK安装完成之后我们进行JDK环境变量设置:
我的电脑点右键,选择“属性”,选择“高级”标签,进入环境变量设置,分别设置如下三个环境变量:
(1)设置好path变量,使得我们能够在系统中的任何地方运行java应用程序,比如javac、java、javah等等,这就要找到我们安装JDK的目录,比如我们的JDK安装在C:\jdk1.6.0目录下,那么在C:\jdk1.6.0\bin目录下就是我们常用的java应用程序,我们就需要把C:\jdk1.6.0\bin这个目录加到path环境变量里面。
在系统变量里找到path变量,选择->编辑;(里面已经有很多的变量值,是在变量值的最前面加上C:\jdk1.6.0\bin;)
变量名:path
变量值:C:\jdk1.6.0\bin;
(2)classpath环境变量,是当我们在开发java程序时需要引用别人写好的类时,要让java解释器知道到哪里去找这个类。通常,sun为我们提供了一些额外的丰富的类包,一个是dt.jar,一个是tools.jar,这两个jar包都位于C:\jdk1.6.0\lib目录下,所以通常我们都会把这两个jar包加到我们的classpath环境变量中set classpath=.;C:\jdk1.6.0\lib\tools.jar;C:\jdk1.6.0\lib\dt.jar。
在系统环境变量那一栏中点->新建classpath
变量名:classpath
变量值:.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;(注意,CLASSPATH最前面是有个“.”的,表示当前目录,这样当我们运行java AClass的时候,系统就会先在当前目录寻找AClass文件了。);
(3)设置JAVA_HOME:
一是为了方便引用,比如,JDK安装在C:\jdk1.6.0目录里,则设置JAVA_HOME为该目录路径, 那么以后要使用这个路径的时候,只需输入%JAVA_HOME%即可,避免每次引用都输入很长的路径串;
二则是归一原则,当JDK路径改变的时候,仅需更改JAVA_HOME的变量值即可,否则,就要更改任何用绝对路径引用JDK目录的文档,要是万一没有改全,某个程序找不到JDK,后果是可想而知的——系统崩溃!
三则是第三方软件会引用约定好的JAVA_HOME变量,不然,你不能正常使用该软件。
在系统环境变量那一栏中点->新建JAVA_HOME (JAVA_HOME指向的是JDK的安装路径)
变量名:JAVA_HOME
变量值:C:\jdk1.6.0
配置完成下面写一个简单的java程式来测试J2SDK是否已安装成功:
- public class HelloWorld{
- public static void main(String[] args){
- System.out.println("Hello");
- }
- }
将程式保存为文档名为HelloWorld.java的文档。
打开命令提示符窗口,进入到HelloWorld.java所在目录,键入下面的命令
- javac HelloWorld.java
- java HelloWorld
此时若打印出来HelloWorld则安装成功,若没有打印出这句话,仔细检查以上配置是否正确。
JDK环境变量设置成功后你就可以着手学习java了。