gpt4 book ai didi

string - 将字符串乘以整数返回整数?

转载 作者:行者123 更新时间:2023-12-05 00:25:55 24 4
gpt4 key购买 nike

所以我试图用 D 做一个星号金字塔。
首先,我注意到串联似乎是不可能的。写出类似 writeln("foo" + "bar") 的内容会给你一个语法错误。所以相反,我尝试像在 python 中那样将字符串相乘,这不适用于双引号字符串,但是使用单引号字符串会发生一些奇怪的事情。

如果你输入这个

import std.stdio;
void main()
{
foreach (i; 0 .. 10)
{
writeln(i*'0');
}
}

它会返回一堆整数。
谁能解释为什么会发生这种情况?
让我知道如何连接字符串也将非常有帮助。

谢谢!

最佳答案

'0' 不是字符串,它是一个字符,它使用 ASCII 编码。该数字与编码的整数 id 相乘。例如,ASCII 的“A”的编码是 65。

import std.stdio;
int main()
{
writeln( cast(int)'A' );
writeln( 10 * 'A' );
return 0;
}

该程序将打印 65 和 650,因为在这两种情况下字符都被转换为整数。

要解决最初的连接问题,您可以使用“~”运算符连接两个数组,或使用“array1 ~= array2”在一个语句中将 array2 附加到 array1 上。

关于string - 将字符串乘以整数返回整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23210349/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com