您的位置:首页 > 其它

校长 – Roy's Blog

2011-01-06 10:08 267 查看

校长 – Roy's Blog

偏执狂:学习不分春夏秋冬,贵在坚持;奋斗可分鼠雀鲲鹏,人生贵搏。

Main menu

Skip to content

Home

About Me

Domain List

Jquery Lib

PEAR

Solar PHP

Post navigation


Older posts

php中eval返回值

Posted on
January 2,2011 by
校长

前两天在群里面讨论,如何计算字符串表达式的值,如:1*2+3。群里面马上有人给出了方案,使用eval方法。

不错,使用eval方法是最佳选择。

当然下面这样是输出不了值的:

view source
print
?

1

echo

eval

(

'1*2+3;'

);

因为1*2+3是常量表达式,并没有返回值或保存变量。

可以在eval中为变量赋值,像这样:

view source
print
?

1

eval

(

'$a =1*2+3;'

);

2

echo

$a

;

因为在退出eval后,该函数中变量会保持其值。但这种方法使用了两条语句,所以不可取。

最后的也是最好的方法,在eval函数中直接显示使用return返回值:

view source
print
?

1

echo

eval

(

'return 1*2+3;'

);

Posted in
php

|
Tagged
eval
,php
|
Leave a comment

Solar连接Oracle存在的问题!

Posted on
January 2,2011 by
校长

前段时间朋友@东疯 使用Solar连接Oracle,死活都连不上,搞了好久天,所以我也找时间研究了下。看这里:http://wiki.oracle.com/page/PHP+Oracle+FAQ
。使用PDO连接Oracle:

view source
print
?

1

try {

2

$dbh

=

new

PDO(

'oci:dbname=myhost/XE'

,

'myusername'

,

'mypassword'

);

3

}

4

catch (PDOException

$e

) {

5

trigger_error(

"Could not connect to database: "

.

$e

->getMessage(),E_USER_ERROR);

6

}

有三种合法字符串:

1.简易连接

view source
print
?

1

$c

=oci_connect(

'myusername'

,

'mypassword'

,

'mymachine.mydomain/MYDB'

);

2

$d

=

new

PDO(

'oci:dbname=myhost/XE'

,

'myusername'

,

'mypassword'

);

3

//或

4

$c

=oci_connect(

'myusername'

,

'mypassword'

,

'127.0.0.1/XE'

);

5

$d

=

new

PDO(

'oci:dbname=127.0.0.1/XE'

,

'myusername'

,

'mypassword'

);

Continue reading →

Posted in
solarphp

|
Tagged
oracle
,php
,solar
|
Leave a comment

C语言中数组变量及用法

Posted on
December 19,2010 by
校长

在C语言中,数组是一类复杂数据类型,数组元素可以是任意数据类型,但所有元素类型必须一致。C语言中的数组值得注意的地方有以下两点:

C语言中只有一维数组,而且数组的大小必须在编译期就作为一个常数确定下来。然而,C语言中数组的元素可以是任何类型的对象,当然也可以是另外一个数组。这样“仿真”出一个多维数组就不是一件难事。

对于一个数组,我们只能够做两件事情:确定该数组的大小,以及获得指向该数组下标为0的元素的指针。其他有关数组的操作,哪怕它们乍看上去是以数
组下标进行运算的,实际上都是通过指针进行的。换句话说,任何一个数组下标运算都等同于一个对应的指针运算,因此我们完全可以依据指针行为定义数组下标的
行为。

要理解C语言数组的运作机制,我们首先来声明并定义一个数组。例如

view source
print
?

1

int

a[3] ={3,7,9};

除了a被用作运算符sizeof的参数这一情形,在其他所有情形中数组名a都代表指向数组a中下标为0的元素的指针。正如我们合乎情理的期待,sizeof a的结果是整个数组a的大小,而不是指向数组a的元素的指针的大小。

从上面的理论我们不难看出,*a即数组中下标为0的元素的引用。例如,我们可以这样写:

view source
print
?

1

*a =84;

这个语句将数组a中下标为0的值设置为84。同样道理,*(a+1)是数组a中下标为1的元素的引用,依次类推。概而言之,*(a+i)即数组a中下标为i的元素的引用;这种写法是如此常用,因此它被简记为a[i]。

实际上,由于a+i与i+a含义一样,因此a[i]与i[a]也具有同样的含义。

Posted in
c

|
Tagged
array
,c
,pointer
|
Leave a comment

给定一个数组,求任意(N-1)个元素的乘积中的最大值?

Posted on
December 12,2010 by
校长

题目——子数组的最大乘积?

给定一个长度为N的整数数组(数组元素可以为正或负或0),计算任意(N-1)个元素的乘积中的最大值。

view source
print
?

01

#include <stdio.h>

02

#define N 8

03

int

recur_multi(

int

a[],

int

len);

04

int

main(

int

argc,

char

*argv[])

05

{

06


int

a
={5,-2,-3,-5,3,2,1,4};

07


int

b
={0};

08


int

i;

09


int

tmp;

10


int

max;

11


for

(i =0; i < N; ++i)

12


{

13


tmp =a[i];

14


a[i] =1;

15


b[i] =recur_multi(a,N-1);

16


a[i] =tmp;

17


}

18


for

(i =0; i < N; ++i)

19


{

20


printf

(

"%d/t"

,b[i]);

21


}

22


max =b[0];

23


for

(i =1; i < N; ++i)

24


{

25


if

(b[i] > max)

26


{

27


max =b[i];

28


}

29


}

30


printf

(

"/n%d/n"

,max);

31


return

0;

32

}

33

int

recur_multi(

int

a[],

int

len)

34

{

35


if

(0 ==len)

36


{

37


return

a[0];

38


}

else

{

39


return

a[len] * recur_multi(a,len-1);

40


}

41

}

42

</stdio.h>

Posted in
c

|
Tagged
array
,c
|
Leave a comment

[转]复仇的书呆子!2002年5月

Posted on
December 12,2010 by
校长

原文:http://flyingapplet.spaces.live.com/blog/cns!F682AFBD82F7E261!375.entry

“我们争取的是C++程序员。我们已经成功地把很多人从转向Lisp的半路上给拉过来了。”

- Guy Steele,Java规范作者之一

软件行业里一直有两股力量在争斗:酷想法的学院派和同样可怕的酷头发的老板。每个人都知道酷头发的老板指哪些人,对吧?我想大多数做技术的不仅认识这个卡通人物,而且知道自己公司里面哪些人可以和这个卡通人物对号入座。

那些酷头发的老板们的身上神奇地结合了两种品质,这两种品质各自都很常见,但很少同时出现在同一个人身上:(1)对技术完全彻底一窍不通;(2)对技术有很强的主见。

比方说,你要写一个软件,酷头发的老板完全不懂软件,对编程语言也一无所知,但是他就是知道你应该有什么编程语言来开发。真的,他觉得你应该用Java开发。

他为什么这样想呢?让我们研究一下酷头发的老板的大脑的思维方式,他是这样想的:Java是标准,肯定是标准,因为天天都可以在媒体上看到。既然是
标准,用它就不会给自己带来麻烦。同时市面上总是有很多Java程序员,所以如果我手下的程序员辞职了(不知道什么在捣鬼,我手下的程序员老有人辞职),
我很容易找到人替代他们。

嗯,听起来不是完全没有道理。但是,这种思路基于一个隐含的假定,而且这个假定不成立。酷头发的老板们相信所有的编程语言都是基本等价的。如果真是这样他就对了,如果所有编程语言都是等价的,当然用大家都在用的语言。

但是所有的语言都不是等价的,其实不用分析语言之间的具体差异就可以证明这一点。如果1992年你问酷头发的老板应该有什么语言开发软件,他会同样
毫不犹豫地告诉你答案。应该用C++开发软件。如果语言都是等价的,酷头发的老板的观点为什么会改变呢。更进一步讲,开发Java的人们还有什么必要创造
一门新语言呢。

通常情况下,如果你创造一门新的语言,那肯定是因为它可以在某些方面优于已有的方法。实际上,Gosling在第一版Java白皮书中明确指出设计
Java是为了解决C++语言的一些问题。所以现在你知道了:不是所有语言都是等价的。如果你顺着酷头发的老板的思路看到Java,然后沿着Java的历
史看到其来源,你就会发现自相矛盾之处了。

那么谁对谁错呢?是James Gosling,还是酷头发的老板?不用说当然Gosling是对的。对于某些问题,有的语言确实
比其它语言好。下面我们来看一些有意思的问题。Java被设计得在某些问题上比C++好。哪些问题呢?什么情况下Java好,什么情况下C++好?有没有某些场景下其它的语言比它们俩都好? Continue reading →

Posted in
杂谈

|
Tagged
c
,java
,lisp
|
Leave a comment

截至雷军金山讲话

Posted on
November 19,2010 by
校长

为什么我们选择傅盛做新公司的领头人呢?因为傅盛是一个具备互联网精神的人。什么是互联网精神?我觉得最核心的有三条:

第一条,极致。我的另外一个投资团队,在凌晨两点给我发了一个短信,说“我终于明白啥叫‘极致’了,极致就是把自己逼疯,把竞争对手逼死,这叫极致。”

我们常常抱怨,我们做了一点功能,对手就复制了。那么我就想问,你能不能做一个产品对手完全就复制不了呢?iPhone到今天已经发布了3年零3个月,全球至今没有任何一个手机厂商的产品赶上了iPhone,去年我无比期待的诺基亚

5800XM,只玩了15分钟,就丢到垃圾筒了。今年我又无比期待诺基亚的N8,刚上市,七千块,买了一部,30分钟,垃圾筒。

第二条就是用户口碑。我们经常说“好的产品会说话”,光满足用户需求,这还不够,要超越,要引导。

第三点,快。速度上是不是比竞争对手更快,是不是能更关注用户的反馈,小步快跑,快速迭代的开发方法,这都是互联网精神所特有的。

Posted in
杂谈

|
Tagged
互联网
,互联网精神
|
Leave a comment

Post navigation


Older posts

January 2011
MTWTFSS
« Dec
12
3456789
10111213141516
17181920212223
24252627282930
31
Search for:

Categories

apache

BlackBerry

c

CodeIgniter

cpp

css

gnu

html

javascript

jquery

linux

mysql

php

python

regular expression

softs

solarphp

tools

帝国CMS

影视动画

杂谈

算法

读书笔记

链接表

abeautifulsite

alistapart

beyondcoding

Blog—JustinYoung

Blog-egorkhmelev

Blog-sohtanaka

Blog-teehanlax

Emacs教程

free-css-drop-down-menu

iconfinder

Jquery – fg

jquery-plugin charts

JqueryGlobe

learningjquery

LiBear

Life

Lynn

Mozlinks-zh-Tw

Paul

phpcaptcha

Press Fetion

SolarPHP

thinkpc

tutorialzine

UseJquery

usejquery

Web IDE

Webappers

Zend Studio

[BlackBerry Phone] 莓文化

[EditPlus4PHP] 十五工作室

云端听海

国内外优秀RIA书籍

夏雪飘飞

开源中国社区

百度万年历

翻墙教程及工具

袜子粘到手

西风夜空

长沙团购导航

风清扬的博客

Meta

Register

Log in

Entries RSS

Comments RSS

WordPress.org

Proudly powered by WordPress
|
Theme: Toolbox by Automattic
.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: