Archive for the ‘ 笔记本 ’ Category

东瀛鸟语之诡异的词汇

中国人学日语的优势是汉字,劣势也是汉字.因为有些词义的分歧实在是太大…

先整理这些,以后不断更新

勉強(べんきょう)

是”学习”的意思…看来学的头大的不光是中国人…

八百屋(やおや)

蔬菜店…估计为了突出蔬菜之丰富…或者第一个开蔬菜店的姓八百?

床屋(とこや)

理发店…不明真相

手紙(てがみ)

不是厕所里那个手纸,是邮局里的信…这个也很囧

土産(みやげ)

从外面回来总要带点什么土特产吧,礼物的意思

試験(しけん)

不是实验,是考试…或者说拿人做实验- -b…好恐怖的想法

痴漢(ちかん)

色狼- -b…嗯,痴汉…

汽車(きしゃ)

会冒蒸汽的车是什么车?答曰火车…当然现在都被新幹線代替了吧…

关于memset的一点注意

今天拿memset初始化一块内存的时候发现结果似乎和我预想的不一样,本来是value传入的是2^30这样一个数字,结果printf一看全是0

于是google了一下,memset函数原型是:

void * memset ( void * ptr, int value, size_t num );

问题就在这里了,第二个参数是Int型,但函数内部实际处理的时候强制转换成了char型,于是有了这样一个说明:

value:
Value to be set. The value is passed as an int, but the function fills the block of memory using the unsigned char conversion of this value.

然后又做了个实验:

int main()
{
	short a;
	int b;
	long c;
	long long d;
	memset(&a,1,sizeof(a));
	memset(&b,1,sizeof(b));
	memset(&c,1,sizeof(c));
	memset(&d,1,sizeof(d));
	printf("%ld\n",sizeof(char));
	printf("%ld %d\n",sizeof(a),a);
	printf("%ld %d\n",sizeof(b),b);
	printf("%ld %ld\n",sizeof(c),c);
	printf("%ld %lld\n",sizeof(d),d);
}

相应的输出是(gcc 4.2.1,i686):

1
2 257
4 16843009
8 72340172838076673
8 72340172838076673

上面b的内存示意如下(int型,4byte):

memset后的内存示意图

这样之前的”诡异现象”就好解释了,int型的2^30强制转换后截取了最后一个byte,全0,于是相当于把内存清零…

本来还想瞅一下memset的源代码,结果发现是汇编的…针对系统的架构进行了优化,所以比一般自己写的循环效率要高

vim之入门篇:安装/使用/配置

自从发觉Xcode编译C代码有bug之后,就走上了 MacVim + gcc 的不归路…

先贴张图秀一下:

MacVim截图

1.安装

mac OS是基于UNIX的,自然终端下面就有一个,不过我觉得不会有人会拒绝GUI版本的,何况这个版本还很好用: )

GUI版本名字是MacVim,目前最新的稳定版本是7.2.

下载解包之后是三个文件,一个.app,放到应用程序文件夹;一个名为mvim的shell脚本,放到一个合适的$PATH下(不cp这个文件不会影响使用,只是不能在终端里调用MacVim,调用方法是”mvim+空格+文件名”);还一个readme,看完删了吧…

之后要自己在~/下建立MacVim的相关文件夹,用以配置和安装插件,命令如下

cd ~
mkdir .vim
cd .vim
mkdir after autoload colors compiler doc ftplugin indent keymap plugin syntax

2.使用

有牛人些做了一张键位分布图,一图胜千言(点击图片放大):

vim按键功能图

需要注意的只是这里写的ctrl就是键盘上那个control键,而不是command键

3.配置

vim的配置是通过编辑~/下名为.vimrc的配置文件进行,命令如下:

mvim ~/.vimrc

也可以通过点击菜单栏的Edit->Startup Settings进行编辑

贴一下自己的配置文件,双引号开头的是注释行

set nocompatible
"不兼容vi模式
set number
"显示行号
syntax on
"语法高亮
set cindent
"按照C语法自动缩进
set tabstop=8
set shiftwidth=8
set softtabstop=8
set noexpandtab
"设置缩进长度
"详见http://dddspace.com/2010/03/vim-indentation-and-space-config.html
set showmatch
"显示括号对应
set incsearch
"实时显示搜索结果
set encoding=utf-8
set fileencodings=ucs-bom,utf-8,utf-16,cp936,gb18030,big5,euc-jp,euc-kr,latin1
"编码设置
set guifont=Menlo:h16:cANSI
"设置字体
colorscheme torte
"设置颜色主题
set transparency=15
"设置透明度

autocmd BufEnter * call DoWordComplete()
"打开自动补齐插件

需要特别注意等号后面不能加空格,否则就不能正常设置,比如不能写成”set tabstop=  8″,这应该算个bug…也有可能是个feature,谁知道呢?

其中那个transparency貌似是MacVim的私有属性;那个自动补全的插件叫做”word_complete“,跟Xcode的代码补全方式相同,用起来还是多顺手的

对插件还没啥子心得,以后再写

 

参考了1,2,3

东瀛鸟语1单元

在语感还没培养起来之前,还是总结下语法,或者叫句型…

肯定句/否定句:

A は B です。

A 是  B; A 在 B.

否定: A は B では/じゃ ありません。

例句: 1、 私は電子科技大学の学生です。2、李さんは事務所です。3、私は日本人ではありません。

A は B に あります/います。

A 在 B.(います专用于动物)

例句: 1、図書館はここにあります。2、子供は公園にいます。

A に B が あります/います。

A处有 B.

否定: A に B は ありません/いません。

全面否定: A に B も ありません/いません

例句: 1、ここに図書館があります。2、公園に子供がいます。3、あそこに本はありません。4、冷蔵庫に何もありません。

特殊疑问句:

これ/それ/あれ は 何 ですか。

what’s this/that?

あの 人は だれ/どなた ですか。

who’s that person?

この/その/あの Xは だれのですか。

whose X is this/that?

Xの Yは どれ/どのYですか。

which is X’s Y?

なんさいですか。/おいくつですか。

how old are you?

おいくらですか。

how much is it?

Xは どこ/どちら ですか。/ Xは どこに ありますか/いますか。

where’s X?

一般疑问句/选择疑问句(及回答):

Xは Yですか。

X 是 Y 么?

例句: ーーそこは映画館ですか。  ーーはい/ええ、そうです。/いいえ、ちがいます。

Xは Aですか、Bですか、…

X 是 A 还是 B, 还是…?

例句: ーー八百屋は あの ビルの 1階ですか、2階ですか、3階ですか。  ーー1階です。