Pascal中字符串到整数的转换,怎么做?

发布于 2024-10-01 03:14:54 字数 37 浏览 0 评论 0原文

如何将字符串中打印的数字转换为整数?

谢谢。

How to convert a number printed in a string into integer?

Thank you.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

折戟 2024-10-08 03:14:54

is 过程 Val:

procedure Val(S; var V; var Code: Integer);

该过程对十进制数和实数进行操作。

参数:

  • S 字符序列;为了正确转换,它必须包含“+”、“-”、“,”、“.”、“0”..“9”。
  • V 转换结果。如果结果是整数,则 S 不能包含 ',', '.'。
  • C 返回 S 中中断转换的字符的位置。

用例:

Var Value :Integer;

Val('1234', Value, Code);  // Value = 1234, Code = 0
Val('1.234', Value, Code); // Value = 0, Code = 2
Val('abcd', Value, Code);  // Value = 0, Code = 1

The is procedure Val:

procedure Val(S; var V; var Code: Integer);

This procedure operate on decimal and real numbers.

Parmeters:

  • S char sequence; for proper conversion it has to contain ‘+’, ‘-‘, ‘,’, ’.’, ’0’..’9’.
  • V The result of conversion. If result going to be an Integer then S can't contain ‘,’, ’.’.
  • C Return the position of the character from S, that interrupt the conversion.

Use cases:

Var Value :Integer;

Val('1234', Value, Code);  // Value = 1234, Code = 0
Val('1.234', Value, Code); // Value = 0, Code = 2
Val('abcd', Value, Code);  // Value = 0, Code = 1
人海汹涌 2024-10-08 03:14:54
 Textval := '123';
    Val(Textval, Number, Code)  ---> Code = 0, Number = 123

   Textval := '12345x2';
   Val( Textval, Number, Code)  ---> Code = 6,  Number remains unchanged;

Val( TextVal, Number , Code) 将字符串转换为数字。
如果可能,则代码的结果 = 0,否则错误指示编号。

 Textval := '123';
    Val(Textval, Number, Code)  ---> Code = 0, Number = 123

   Textval := '12345x2';
   Val( Textval, Number, Code)  ---> Code = 6,  Number remains unchanged;

Val( TextVal, Number , Code) which converts String to a number.
if possible the result of code = 0, elese error indication number.

月牙弯弯 2024-10-08 03:14:54

自 ISO 标准 10206“扩展 Pascal”以来,过程 readStr 已内置到编程语言中。
它在功能上相当于 read/readLntext 文件结合使用(除了没有 text 文件)需要)。
这意味着前导空格将被忽略,后跟一个有效的整数文字,该文字以空格或简单的字符串末尾结尾。
示例:

program readStrDemo(output);
    var
        n: integer;
    begin
        readStr('  +1234 Hello world!', n);
        writeLn(n) { prints 1234 }
    end.

与 Borland Pascal 的 val 过程相比 但是,您无法发出用户友好的错误消息,特别是哪个(第一个)字符引起了麻烦。
Pascal 的内置 readreadLnreadStr 过程完全失败,具体细节取决于处理器。
另一方面,readreadLnreadStr 是标准化的,因此不存在供应商锁定。

请注意,除了读取十进制 integer 文字之外,read/readLn/readStr 还可以解析任何 整数在 Pascal 源代码中合法的 文字,包括带基数前缀的 integer 文字,例如 16#FF (255)。

Since ISO standard 10206 “Extended Pascal” the procedure readStr is built‑in into the programming language.
It is equivalent in function to read/readLn in conjunction with a text file (except that no text file is needed).
That means leading blanks are ignored, followed by one valid integer literal which is terminated by blanks or simply the end of string.
Example:

program readStrDemo(output);
    var
        n: integer;
    begin
        readStr('  +1234 Hello world!', n);
        writeLn(n) { prints 1234 }
    end.

In contrast to Borland Pascal’s val procedure you cannot emit a user‑friendly error message, though, specifically which (first) character is causing troubles.
Pascal’s built‑in read, readLn and readStr procedures simply fail, the specifics are processor‐dependent.
On the other hand, read, readLn and readStr are standardized so there is no vendor lock‑in.

Note, in addition to reading decimal integer literals, read/readLn/readStr can parse any integer literal that is legal in your Pascal source code, including base‑prefixed integer literals such 16#FF (255).

满地尘埃落定 2024-10-08 03:14:54

您可以使用 Val 函数。

例子:

var
   sNum: String;
   iNum: Integer;
   code: Integer;

begin
   s := '101';
   Val(s, iNum, code); 
end.

You can use Val function.

Example:

var
   sNum: String;
   iNum: Integer;
   code: Integer;

begin
   s := '101';
   Val(s, iNum, code); 
end.
救星 2024-10-08 03:14:54

你可以像这样使用,

var

i: integer;
s: string;
begin
str(i, s);
write(i);

You can use like this,

var

i: integer;
s: string;
begin
str(i, s);
write(i);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文