DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: 19137911446
今日帖子: 21
在线用户: 24
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 baopaobao (baopaobao) ★☆☆☆☆ -
普通会员
2004/2/22 21:56:31
标题:
菜鸟又碰上新问题 浏览:1281
加入我的收藏
楼主: 我在教材上看到的一段程序:
procedure NumString(N: Integer; var S: string);
var
  V: Integer;
begin 
  V := Abs(N);
  S := ';
  repeat
    S := Chr(V mod 10 + Ord('0')) + S;
    V := V div 10;
  until V = 0;
  if N < 0 then S := '-' + S;
end;

chr()查资料解释为返回指定序数的字符,指定序数是什么意思啊?
ord()资料解释为返回序数类的序数,序数类是指什么呢?
还有能不能解释一下上面这段程序的具体作用,我糊里糊涂的,先谢谢大家了。
----------------------------------------------
-
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2004/2/22 22:19:36
1楼: chr 根据ASCII码就字符
ord 根据单个字符返回 ASCII码
把 一个整形数转换成 字符串,如果是负数加个“-”


----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
作者:
男 baopaobao (baopaobao) ★☆☆☆☆ -
普通会员
2004/2/23 12:54:10
2楼: 谢谢大侠指点,可是我还是有些不明白:procedure NumString(N: Integer; var S: string);
过程括号内的(N: Integer; var S: string),在这里起什么作用的?教材上是这样调用NumString(17,mystring)的,书上解释为:“将MYSTRING赋值为17”。
这样我就不明白了,前面定义N: Integer为整型,后面定义变量S为字符型,S为字符型,N为整型,怎么mystring会等于17呢?
我一直以来把S := Chr(V mod 10 + Ord('0')) + S理解成,N = 17,S = mystring,可以照自己的理解一套入公式上面这代码就变成了:S := Chr(17 mod 10 + Ord('0')) + mystring,唉,我都被自己搞晕了,大家再帮我看看好吗?
----------------------------------------------
-
作者:
男 sephil (NAILY Soft) ★☆☆☆☆ -
盒子中级会员
2004/2/23 13:02:52
3楼: (N: Integer; var S: string)是形式参数
你还要好好看书
----------------------------------------------
Copyright 2008 ? NAILY Soft

Click here to redirect to my home
Click here to redirect to my blog
作者:
男 baopaobao (baopaobao) ★☆☆☆☆ -
普通会员
2004/2/23 13:16:08
4楼: 形参我是知道,一个是变量参,一个是值参,但具体作用书上没有啊,天啊,能不能用个简单的程序例子给我说一下呀,拜托大家了。
----------------------------------------------
-
作者:
男 smallfang (*&*) ★☆☆☆☆ -
普通会员
2004/2/23 14:31:59
5楼: mystring指得是一个字符串变量(书上常有My......来说明问题),比如:
var
  s : string;
begin
  NumString(17,s);  //就完成相当于S:='17';的功能。
                    //数字和字符串是不一样的。它就完成把数字转换成字符串
end;

(说明白了吗?)
----------------------------------------------
如你所愿,你将不会收到本站任何邮件。
作者:
男 baopaobao (baopaobao) ★☆☆☆☆ -
普通会员
2004/2/23 21:01:39
6楼: 还是不懂,要是能把我上面贴的哪段代码每行都做个讲解就好了,大家以前是怎么学DELPHI的呢?自学的还是在学校学的,我买书自学感到很难,很多东西都无法理解。
----------------------------------------------
-
作者:
男 kuri99 (小武) ★☆☆☆☆ -
普通会员
2004/2/23 21:12:29
7楼: 我也是个初学者啊!真的很难啊!按此在新窗口浏览图片 我是看书,然后找例子来做,不懂的就找资料,然后再看书,你们说我这样可以吗?
----------------------------------------------
我行我素
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2004/2/23 21:14:23
7楼: 呵呵 这样情况可不妙啊,难的程序多如米,比如汇编,WIN32汇编,比这些高级语言难懂的多啊!
----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
作者:
男 baopaobao (baopaobao) ★☆☆☆☆ -
普通会员
2004/2/23 21:31:57
8楼: 可这些不是关于技术方面的问题,只是我概念没有理解清楚造成的,就比如说这句:S := Chr(V mod 10 + Ord('0')) + S ,这个应该是返回值到程序调用处吧?返回值干嘛要 + s ,真莫名其妙的,还有前面的S := ',这是返回空值吗?
我买了好几本教材,没有一本详细的讲解过程和函数的形式参数的,要不就是只讲一点点,看完后比没有看过更加糊涂了,教材都是骗钱的!!!不知道怎么搞的,外面卖VC和VB的书远比DELPHI多出N倍,不公平啊。
----------------------------------------------
-
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2004/2/23 21:52:02
9楼: 福州人才招聘会:
50%:c#开发,java通信开发
20%:asp,vbscript,javascript,asp.net
20%:c++写unix底层短信服务器开发,
c++写LINUX操作系统底层管理,
模拟数字电路设计,印刷线路版设计,
机械设计!
10%:delphi数据库管理系统

var S: string表示引用实参地址,在子程序中修改了S就等于对实参修改了,
建议好好学习C语言和C++


----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
作者:
男 cyh9519 (智商65) ★☆☆☆☆ -
普通会员
2004/2/24 8:22:34
10楼: '+'用来表示字符串的连接
比如a='1',s='7'
那么s:=a+s就表示把a和s连在一起再赋值给s
运行完了结果是s='17';
----------------------------------------------
-
作者:
男 smallfang (*&*) ★☆☆☆☆ -
普通会员
2004/2/24 16:36:28
11楼: 那你还是先找一本谭浩强著的适合于初级学者的书看看。(比如他的C程序设计一书)。差不多所有高级语言的概念都是相通的,看过之后就好理解了。
----------------------------------------------
如你所愿,你将不会收到本站任何邮件。
作者:
男 baopaobao (baopaobao) ★☆☆☆☆ -
普通会员
2004/2/24 19:32:26
12楼: 谢谢各位的帮助,我问同事借到谭浩强的C语言,正在看呢。
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行66.40625毫秒 RSS