小编use*_*893的帖子

D lang - 在同一程序中使用read和readln()

我对D程序有一个非常奇怪的问题.read("%s",变量)本身工作正常,readln(变量)本身工作正常,但是当我把两者放在一起时,readln()似乎被传递过来了.使用gdc和dmd都会发生错误.

import std.stdio;
import std.string;

void main()
{
    int x;
    write("Enter a number: ");
    readf(" %s", &x);

    write("What is your name? ");
    string name=chomp(readln());

    writeln("Hello ", name, "!");
}
Run Code Online (Sandbox Code Playgroud)

输出:

Enter a number: 5
What is your name? Hello !
Run Code Online (Sandbox Code Playgroud)

但是,如果我注释掉readf("%s",&x),则按照我的意愿调用readln:

Enter a number: What is your name? hjl
Hello hjl!
Run Code Online (Sandbox Code Playgroud)

d

2
推荐指数
1
解决办法
385
查看次数

标签 统计

d ×1