`
simohayha
  • 浏览: 1407525 次
  • 性别: Icon_minigender_1
  • 来自: 火星
社区版块
存档分类
最新评论
文章列表
1 处理复数 标准库complex 能使我们处理复数。一个复数的创建能使用Complex来构造: require 'complex' puts Complex(1,2) # 3+5i 方法im能够转换一个数字为虚数: puts a = 3.im # 3i puts b = 5 - 2.im # 5-2i 如果你想表示极坐标的话,可以使用polar方法: puts z = Complex.polar(5,Math::PI/2.0) #第一个参数是半径,第二个参数是角度 Complex还提供了I这个常量,他就表示复数中的i: puts z1 = Comple ...
1 在ruby中表示数值 直接表示: 237 或者+237表示一个正数(如果超出范围,那他就是一个无符数) -237 表示一个负数 当一个数字太长的话,可以用_将它分割,比如1048576和1_048_576 是一样的。 在ruby中还可以用0b,0,0x分别表示2进制,8 ...
5规范化unicode字符串 这张没什么意思,它讲的是将一些拉丁文的音调和表示分开来表示,比如"é"  可以表示为e 和'.对我们来说,没有多大的用处,就不说了。 不过这张介绍了一个unicode的库,大家想看的话可以去看看 http://www.yoshidam.net/Ruby.html 6字符串的排序 这张也是没多少意思,对我们来说,这张讲的是对拉丁文,西班牙文之类的字符的排序,作者所作的是把那些字母的发音用上一小节所用到的Unicode库,单独那出来,然后再 进行排序. 这边要注意的是,对于array.sort他的排序,是通过解码后字节大小来进行排序的: ...
这边有几个概念先看一下: 引用为了将软件多语言化,首先进行植入能够使用各种语言的设计和方法等的国际化操作(internationalization 118N)。然后针对各种语言,进行能够使用该语言的地区化(localization、L10N)的操作。进行了 ...
这几天一直在做csapp里面的3.38,他是让你自己实现一个缓冲区溢出程序.代码如下: /* Bomb program that is solved using a buffer overflow attack */ #include <stdio.h> #include <stdlib.h> #include <ctype.h> /* Like gets, except that characters are ...
无语了,写好的blog,不小心按了刷新键,全没了........ 7 使用字符类 字符类也就是包裹在中括号里面的一堆字符.他所匹配的是中括号里面的任意一个字符。 [aeiou] #匹配 a,e,i,o,u中的任意一个字符   要注意在他里面的那些特殊字符比如.?之类的将全部只能表示他们字面上的意思,而\n之类的能正常转义 [a?si\n] #由于?在这里只能表示字面意思,所以这个匹配 a,?,s,i中的任意一个 ^表示非 [^ae] #匹配非a,e中的任意一个的字符 -表示区间 [a-z] #表示从a到z的任意一个字符 如果要在字符类中使用[ - ]那么就必学用\将他们转 ...
在ruby中内置了正则表达式,如果你的ruby版本是1.9或者更后面的版本的话,你的正则表达式引擎将会是一个叫做Oniguruma的东西。这是一个新的引擎,代替了1.8版本中的这则表达式引擎,我们后面会介绍到它。 1编译正则表达式: 正则表达式能够使用Regexp.compile 方法进行编译(这个方法同Regexp.new方法是同义的), 参数可以是一个字符串或者一个正则式(这边要注意一个问题,如果参数是正则式的话,他所附带的参数将会被传播,你可以不用指定后续的第二个参数,这个马上就会看到),看下面的例子: test1=Regexp.compile("Bar"); ...
gcc对c语言中的switch的优化 在这里: http://simohayha.iteye.com/admin/show/146825 接着用上次的代码 switch.c int switch_eg(int x) { int result = x; switch (x) { case 100: result *= 13; break; case 102: result += 10; /* Fall through */ case 103: result += 11; break ...
31 删除指定的字符: delete方法接受一个字符参数,然后从一个指定的字符串中删除这个字符(是删除所有的,而不只是第一个): s1 = "To be, or not to be" puts s2 = s1.delete("b") # "To e, or not to e" s3 = "Veni, vidi, vici!" puts s4 = s3.delete(",!") # "Veni vidi vici" p ...
在c语言中switch语句会被实现为一个跳转表,跳转表是一个数组,这个数组里面存的都是地址,也就是说只要你传递给它一个i,他就会返回给你,你所需要跳转的地址,这样做得好处就是执行语句的时间和条件的个数无关..不过在gcc里面他也只是条件数大于4个,才会生成这个跳转表. 请看下面的代码: int switch_eg(int x) { int result = x; switch (x) { case 100: result *= 13; break; case 102: result += 10; /* Fa ...

做了个心理测试

SCL90自评症状量表 http://news.21cn.com/luntan/liantang/2007/10/10/3712804.shtml nnd,看起来挺准的,我有强迫症,每天我洗手要洗几十次,而且一定要用洗手液... 看我的得分: 引用你的总分为167分,总均分为1.8555555555555556分 其中JSB单项分12分,JSB因子均分1.2 躯体化分13分均分1.0833333333333333 强迫症状28分均分2.8 人际敏感21分均分2.3333333333333335 抑郁症状24分均分1.8461538461538463 焦虑症状21分均分2.1 敌对症状10 ...
21 在字符串中插入表达式 #{}做的就是这个,在{}中的所有表达式,都会自动计算,看下面的例子: temp_f="ff" temp_c="cc" b=2 a=1 c=3 word="cdafr" puts "#{temp_f} Fahrenheit is #{temp_c} Celsius" #ff Fahrenheit is cc Celsius puts "The discriminant has the value #{b*b - 4*a*c}."#The discrim ...
接着昨天的。 11 控制字符串的大小写 。 downcase 方法可以转换一个字符串为小写,upcase可以转换一个字符串为大写.capitalize 方法强迫字符串第一个字符为大写,其他的字符为小写。 s1 = "Boston Tea Party" puts s2 = s1.downcase # "boston tea party" puts s3 = s2.upcase puts s1.capitalize #Boston tea party swapcase 方法可以将一个字符串中的大小写进行翻转,而casec ...
ruby本来很早就要开始看了,不过最近才真正开始看,那本宝石书还差最后1章就读完了,于是开始看the ruby way了,于是在这边做个记录,也算是督促自己吧.. ruby中的string可以使用多种方式来表示. 1 单引号,这种表示支持的转义最 ...
   昨天去秤体重,没想到又肥了,nnd我要抓狂了,怎么办怎么办(莫非真要打通任督二脉),决定从今以后不吃垃圾食品,每顿饭也尽量少吃,希望体重能降下去,哎,想当年俺是多么的玉树临风,貌似潘安,多吃了点饭就变这样了,真是沧海桑田...    当时高中的时候,非常瘦,整天想着胖,于是就每天狂吃,等到身材变成现在这样了,又想着瘦的时候的好了,不过算起来自己已经3年没有做过任何运动了,而且吃饭的时候战斗力又非常的强,变成这样也是该得的..    上次在西安的时候去买裤子,人家买衣服的小姐,看见我,我还没问呢,那女孩就说我们这里没大号的,妈的,当时我都想打人了。。       
Global site tag (gtag.js) - Google Analytics