我可以通过直接读取USB键盘的IOport来获取输入数据吗

我在Xen平台上工作,现在我想截取HVM域上的中断,以读取键盘的原始数据(扫描代码) 一个想法是,hypervisor按照路径UHCI frame list->TD related to keyboard device->data buffer获取原始数据。但是,当生成中断时,TD已从TD列表中删除。这样,虚拟机监控程序就无法找到数据缓冲区,也无法读取原始数据 另一个想法是直接读取键盘的IOport 我知道通过读取IOport 0x60和0x64可以获得PS2键盘的输入 但我目前的工作设备是US

Io Fortran 90-将变量作为文件路径传递的I/O

这似乎应该是一个简单的解决方案,但在搜索了几个小时后,我找不到解决方案 我想将文件路径保存为字符变量,然后在I/O语句中使用该变量。下面是我从“filepath”定义的文件中读取的代码 该程序进行编译(gfortran编译器使用NetBeans IDE),但当我运行时,会将错误打印到屏幕上 注1:当我将filepath直接放入如下所示的open函数中时,它似乎工作正常 open(unit=1,file='c:\\Users\\Chris\\...\\data.txt',status='old',

Io 使用fortran77将输出写入txt文件,无列宽限制

我想使用f77将以下输出写入txt文件: 14 76900.56273 0.000077 -100000 1000000000 -0.769006 我使用: write(6,*) KINC, BM, R2, AF, BK, BM/AF 没有任何格式(在十进制数字方面效果很好)。但是,在我的txt文件中,输出写为: 14 76900.56273 0.000077 -100000 1000000000 -0.769006 因为我认为默认情况下有一个固定的列宽

Io VHDL:IDE剥离;“未使用”;端口/网络

我用的是格子钻石3.6 我遇到的问题是,我将代码设置为从a点获取一组输入,对它们进行去抖动,然后将它们转发到B并在B处输出。然后,它也从B获取输入,对它们进行去抖动,然后将它们发送到a 关键是,这是一个控制器,它检查特定的操作条件,如果有东西向一侧移动,只会继续传递一些信号进行监控 此时,VHDL代码所做的全部工作就是接收信号,将其传递给去噪器,检索它们,然后再次将其传递出去。IDE还选择删除所有这些信号 Semantic error in "LOCATE COMP "PERIPHERALSOU

操作系统是否挂起IO上被阻止的线程

所以当一个线程执行一个昂贵的IO操作时,我知道它被阻塞了(在IO完成之前不会处理更多的指令)。我想知道的是,操作系统是否经过优化,以实际挂起该线程,并且在IO操作完成之前不安排它 因此,本质上的问题是,IO上阻塞的线程是否继续无所事事地占用CPU周期,或者操作系统是否挂起它并在它准备就绪时将其唤醒 因此,本质上的问题是,IO上阻塞的线程是否继续无所事事地占用CPU周期,或者操作系统是否挂起它并在它准备就绪时将其唤醒 通常,当任务被阻塞(等待IO、时间、互斥或…)时,调度程序被告知找到其他任务来执

Io 小数据集的最小卡桑德拉

我正在尝试配置一些非常小的Cassandra设置。我们的想法是,它应该尽可能少地占用资源,同时尽可能好地执行 当前设置: 虚拟机有两个GB的RMA,我给了Cassandra 1GB的RAM(目前我唯一能抓到的虚拟机) 所有数据文件夹都位于速度非常慢的NFS上(遗憾的是,NFS是一项要求) 我知道这个设置非常糟糕,但是考虑到我将在这里编写的小数据集,我希望有一个不错的性能 阅读部分相当不错,但写作速度非常慢。我每秒只能写大约300条记录(即使用BEGIN/APPLY批处理,我希望这应该相当快)

Io 如何跳过Fortran未格式化文件中的数组?

我的程序读取Fortran中的“未格式化”文件。除此之外,这个文件包含一个我的程序不需要的数组,但它可能会变得相当大。我想跳过这个数组 如果这是写入数据的程序: program write real :: useless(10), useful=42 open(123, file='foo', form='unformatted') write(123) size(useless) write(123) useless write(123) useful end progr

Io 有一百万个文件夹还是一个文件夹中有一百万个文件?

我想知道。哪一个是更好的解决方案 这是一个I/O问题。我的web应用程序在文件系统中存储文件。但我想知道我应该采用哪种解决方案。将所有文件存储在一个文件夹中,或将每个文件存储在拆分文件夹中。文件夹将基于用户id 例如: 用户A的用户ID为1 用户Z具有用户ID 10 所以在我的文件结构中,有两个文件夹,分别是文件夹名“1”和文件夹名“10”。每个文件夹可能有10-50个图像文件 我在考虑表演。哪一个更好。?假设用户id已经达到100万。windows server中有一百万个文件夹有问题吗 有什

测试从衍生进程捕获的IO

我想用以下方法测试返回值和IO输出: defmodule Speaker do def speak do receive do { :say, msg } -> IO.puts(msg) speak _other -> speak # throw away the message end end end 在中,有一个执行此操作的示例测试,如下所示: test "checking the

Io 从磁带读取

我想从磁带读取数据,并将数据作为虚拟磁带存储在磁盘上。如何保持磁带的原始块结构?我拥有的一些数据要求块结构保持不变。如何确定源磁带上的块结构?我想用页眉和页脚结构将块写入文件,然后用它写回磁带/虚拟磁带,以维护块结构。我无法确定如何建立传入数据的数据块结构。我是在Linux(Centos)上用C语言完成这项工作的。语言并不重要,我将接受任何语言的帮助。据我所知,您的分析是正确的。磁带不会维护它所拥有的任何文件结构。您应该使用“文件标记”查找文件在磁带中的位置 实际上,将一组文件写入磁带的过程是这

Io 在fortran(gfortran)中使用超大数组

我使用的是非常大的数组,所以在开始尝试编译时,由于堆栈大小,我会收到一条警告 警告是: 4 | integer, dimension(n,5) :: temp1 1 Warning: Array ‘temp1’ at (1) is larger than limit set by ‘-fmax-stack-var-size=’, moved from stack to static storage. This makes the procedure unsafe when call

Io 飞思卡尔处理器中的pad控制功能说明?

阅读第1368页(第33.3节)上的,有一个处理器焊盘不同可能控制功能的列表 名单如下: SRE(1位转换速率控制) DSE(2位驱动器强度控制) ODE(1位开漏控制) HYS(1位滞后控制) PULL_KEEP_CTL(4位上/下拉和保持器控制) PUS(2位上拉/下拉配置值) PUE(1位拉/保持选择) PKE(1位启用/禁用上拉、下拉或保持功能) DDR\U模式选择(1位DDR\U模式控制) DDR_输入(1位DDR_输入控制) 有人能解释一下其中的每一个是什么吗?最好是以一种教育性

Io 什么时候轮询比中断好?

我在看这张照片: 有两个问题: 1.为了通过中断引用轮询,磁盘应该快多少 我认为,由于ISR和进程跳跃(使用中断时)——例如,在使用快速SSD时轮询会更好,其中轮询比中断(ISR+调度程序)花费的时间更少。我弄错了吗 第二个问题是:如果我的磁盘比第一个问题中的SSD慢,但仍然很快,那么有什么理由更喜欢轮询吗 我想知道我会有很多I/O读取请求这一事实是否足以让我更喜欢轮询 谢谢 您可以想象这样一种情况:运行中断处理程序的开销(使缓存失效,设置要运行的中断堆栈)可能比实际执行读或写操作慢,在这种情

为什么io.WriterString上出现运行时错误?

当运行以下代码时,我得到一个“panic:runtime error:invalid memory address或nil pointer dereference”。我不明白为什么,而且似乎无法从io.WriteString(w,s)中捕捉到错误,我认为这是问题所在。谁能给我指出正确的方向吗 package main import( "io" "fmt" ) func main() { s := "hei" var w io.Writer _, err

Io 生锈是怎么回事?

我用Rust 1.0 alpha编写了一个非常简单的cat函数 use std::io; fn main(){ let mut reader = io::stdin(); loop { let input = reader.read_line().ok().expect("Failed to read line"); print!("{}", input); } } 当我编译它时,我得到以下警告: bindings.rs:5:26: 5

Io 使用PowerMockito模拟经过修饰的流

所以我有一个类,它在构造函数中接受OutputStream,并在方法中从中创建一个PrintWriter。问题是如何让这个PrintWriter验证它 Example public Class(OutputStream output) {} public void foo() { PrintWriter writer = new PrintWriter(output); } 我想做的是: PrintWriter writer = PowerMockito.mock(PrintWriter.

Io 是否有一种标准的方法来丢弃铁锈输入?

从Rust中的stdin读取输入非常简单: use std::io; let mut some_string = String::new(); let _ = io::stdin().read_line(&mut some_string); 但有时您可能希望丢弃它,而不在任何地方确认它或获取缓冲区,例如: println!("Press Enter to close"); io::stdin().discard_input(); // discard_input() doesn't

Io 连接两个数据集并在SAS中获得意外结果

我遇到了一个相当奇怪的情况,我连接了两个数据集,得到了真正意想不到的结果。以下是设置: data a; do i=1 to 100; output; end; run; data b; do j=5 to 79; output; end; run; data c; set a b; if j=. then j=i; run; 有人能给我解释一下为什么在前100次观测中j的值为“1”?看起来j被保留了,但更奇怪

Io 在Fortran中读取可变长度/类型行

我有一行fortran格式的数据,需要读入不同的值。值的数量可以是任何值,类型也可以是任何值。例子 0.45 1 T F 或 如何在不获取下一行信息的情况下成功读取此行,或者至少将其分解为基本标记(这必须不惜一切代价加以防止)。您可以将整行读取为character类型的变量,然后使用character变量执行任何操作,然后读取下一行,依此类推。定期将rwo读取到字符变量中。然后,您可以使用任何必要的逻辑来读取字符变量(称为“内部IO”),以确定该行上有哪些特定项。或者在不使用IO的情况下解析字

Io 键盘进程交互

我想知道键盘中断的逐步顺序是什么。我知道,每次按下一个键,就会触发一个中断,并将该中断排队。如果没有更高优先级的进程,CPU将分配给中断进程。我的问题是:下图中的中断流程位于何处(中断前后)。它是在等待什么事情发生还是在其他地方 这个问题在这里得到了部分回答

Io Fortran运行时错误:文本文件正忙

我已经编写了一个简单的程序来生成输出文件,但每次运行它时,无论我给它什么单元号,编译器都会给出错误: Fortran runtime error: Text file busy 节目如下: program plottest implicit none integer :: z,k,m,j,i double precision :: delta_Tem, deltax, deltaz, a double precision, dimension(:,:), allocatable :: T_n

Io 如何将“say”和“print”写入缓冲区?

在Perl 6中,Str类型是不可变的,因此使用可变缓冲区而不是串联大量字符串似乎是合理的。接下来,我喜欢能够使用相同的API,无论我的函数是写入标准输出、文件还是内存缓冲区 在Perl中,我可以像这样在内存中创建一个文件 my $var = ""; open my $fh, '>', \$var; print $fh "asdf"; close $fh; print $var; # asdf 如何在Perl 6中实现同样的功能?我目前所做的是将字符串串联作为临时解决方

Io 如何在超时的情况下从终端读取UTF-8字符?

我正在尝试在Rust中实现一个命令行编辑库 为了正确处理ESC键,我需要等待可能永远不会到达的转义序列的其余部分 目前,我正在使用: let stdin = io::stdin(); let mut chars = stdin.lock().chars(); let mut ch = try!(chars.next().unwrap()); 但似乎没有办法指定超时。我是否应该尝试将Rust IO与?机箱具有开箱即用的支持: 使用异步std::io; 使用std::time::Duration;

Io 使用h5py并行写入不同的组

我试图使用并行h5py为每个进程创建一个独立的组,并用一些数据填充每个组。。结果是只创建了一个组并填充了数据。以下是节目: from mpi4py import MPI import h5py rank = MPI.COMM_WORLD.Get_rank() f = h5py.File('parallel_test.hdf5', 'w', driver='mpio', comm=MPI.COMM_WORLD) data = range(1000) dset = f.create_datas

Io 为什么不需要CPU来处理I/O请求?

我正在学习操作系统,但有一个小概念我不能掌握。假设一个进程1在CPU上运行,然后它发出一个I/O请求来读取磁盘。为了提高效率,CPU在处理该请求时开始执行进程2。这一切都有道理,但I/O不需要使用CPU吗 我的问题:为什么不需要CPU来处理进程1的请求?这将有助于理解I/O在计算机体系结构中的三个重要方面的作用:中断、DMA和硬件控制器 当CPU向硬盘发出I/O请求时,硬盘有自己的专用芯片,称为设备(或硬件)控制器,专门用于处理来自CPU的命令,如从磁盘读取。最初,这些是为CPU执行特定操作的

Io 从编写器获取字符串的最佳方法

我有一段代码,使用内置模板系统返回网页。它接受写入结果标记的响应编写器。现在,我想将标记作为字符串,并在某些情况下将其放入数据库中。我设计了一个方法,它接受一个普通的编写器,而不是响应编写器,现在我正在尝试编写内容。Aha-我可能需要一个管道,然后我可以从bufio库中获得带有ReadString的字符串。但事实证明,从管道中输出的管道读取器与读取器不兼容(我需要读取字符串方法)。W00t。大惊喜。因此,我可以使用PipeReader读取字节[]s,但是当ReadString存在时,感觉有点错误

如何在相同的输入上测试两个不同的基于linux内核的io shceduler?

我为linux内核3.14开发了两种不同的I/O调度程序。基本上,我的项目是比较这两种算法,并指定哪一种在相同的输入下比其他算法提供更少的头部移动和更少的平均寻道时间 我的问题是如何在相同的输入上测试这两种算法 我用的是软呢帽 谢谢, momersaleem通过在两个调度器上运行相同的程序,可以在相同的输入上测试两种算法。没有比这更多的了。您不能同时运行两个IO调度程序,因此在测试第二个IO调度程序时,只需重新启动并选择不同的IO调度程序 对不起,什么样的节目?请举个例子好吗?如果你问的是如何衡

Io 如何使用Go以非阻塞方式从控制台读取输入?

因此,我: import ( "bufio" "os" ) //... var reader = bufio.NewReader(os.Stdin) str, err := reader.ReadString('\n') 但是reader.ReadString('\n')正在阻止执行。我想以非阻塞方式读取输入。是否可以使用Go的bufio包或任何其他std-lib包从os.Stdin实现非阻塞缓冲输入?一般来说,Go中没有非阻塞IO API的概念。通过使用goroutines,

Io 有没有办法使用名称列表I/O功能读入具有可分配组件的派生类型?

有没有办法使用名称列表I/O功能读入具有可分配组件的派生类型 我所能找到的唯一一件事就是它以一个毫无帮助的音符结束 编辑: 我有用户定义的派生类型,需要从输入文件中填充信息。所以,我想找到一个方便的方法。名字列表似乎是一条很好的路线,因为它非常简洁(基本上是两行)。一个用于创建名称列表,然后读取名称列表。Namelist似乎也是一个不错的选择,因为在文本文件中,它迫使您非常清楚地显示每个值的去向,我发现这比仅仅拥有一个编译器知道确切顺序的值列表更可取。如果我或其他任何人需要知道哪个值对应于哪个变

Io Flashdevelop&x2B;haxe——重复的;发生I/O错误";错误

我得到了一个小对话框,上面会弹出发生I/O错误。这是什么原因造成的,我应该如何解决 编辑:在我运行flash游戏后,FlashDevelop将尝试连接到flash调试器,但显然失败了,并给出了上述错误。我有用于Firefox的调试独立播放器和ActiveX调试控件。要使用haxe/Flash/FlashDevelop激活交互式调试,您必须添加fdb交换机和网络沙盒。为此,请打开项目->属性->编译器选项->指令并添加以下两行: fdb network-sandbox 这就是你所需要的。在此之后

Io 如何获取充当stdin/stdout的文件名?

我有以下问题。我想用Fortran90编写一个程序,我希望能够这样调用: ./program.x < main.in > main.out sInputName的内容变为“Stdin”,而不是文件名。调用程序时,是否有方法获取链接到stdin/stdout的文件名???不幸的是,i/o重定向的要点是,您的程序不必知道输入/输出文件是什么。在基于unix的系统上,您不能查看命令行参数,因为调用程序之前,main.out实际上是由shell处理的,shell使用这些文件设置标准输入和输

Io awk打印与printf函数

在awk中有两个输出函数:print和printf 它们在awk中的实现是否非常不同 性能/速度方面有什么区别(如果可能-理论上,而不仅仅是命令行上的“时间”” 他们使用相同的系统调用吗 性能差异可能无法测量 print功能在末尾输出一个换行符打印F不可用 print代码将参数转换为字符串,然后将其发送到由OFS(输出字段分隔符)分隔的输出 printf代码可能需要先将字符串转换为double,然后再使用double格式(%16.8g或类似操作)对其进行格式化 所使用的系统调用将写入(2)或

如何从Vec或切片读取(std::io::read)?

Vecs支持std::io::Write,因此可以编写包含文件或Vec的代码。从API参考来看,它看起来既不支持Vec也不支持std::io::Read 有没有一个方便的方法来实现这一点?是否需要编写包装器结构 下面是一个工作代码的示例,它读取和写入一个文件,其中一行注释应该读取一个向量 use ::std::io; // Generic IO fn write_4_bytes<W>(mut file: W) -> Result<usize, io::Error>

Io Fortran MPI代码打开具有相同单元号的不同文件

我正在使用OpenMPI在多进程中运行fortran代码。每个进程都需要打开和写入许多文件。在运行期间,可能会有两个不同的进程以相同的单元编号同时打开和写入不同的文件 processA: open(unit=10, file1) processB: open(unit=10, file2) 这会导致问题吗?是的,这是可能的,不应该导致问题。MPI进程都独立运行,不知道其他进程的内存(因此也不知道单元号)。尽管您应该小心不要创建太多的文件,但如果使用数千个进程,您可能会遇到文件系统的限制。请注意

Io 将块循环分布矩阵写入二进制文件

我使用Scalapack对矩阵(25k×25k)进行对角化,需要特征向量。我使用pzlawrite将分布式矩阵写入文件。但是对于如此大的文件,ASCII的写入速度非常慢。我想将输出写入二进制文件会快得多,但我无法获得任何用Fortran将分布式矩阵写入二进制文件的示例。scalapack中是否有内置函数以二进制形式写出分布式矩阵?您没有问任何问题。你的问题是什么?如果它要求一个例子,它在这里是离题的。互联网上有关于并行MPI I/O的教程,甚至这里有问答。您还可以选择任何格式将每个进程的部分写入

EsperIOSocketAdapter绑定到特定网络适配器

我是Esper新手,对使用它通过网络发送事件数据感兴趣,因此对 似乎SocketAdapter只能绑定到特定的端口,如果只有一个网络适配器就可以了,但是可以通过指定其IP地址将SocketAdapter配置为绑定到特定的网络适配器吗 如果需要此功能,请创建一个Esper JIRA。 您还可以直接使用ESPERAPI并使用自己的Java套接字传输

Io Fortran文件I/O二维数组

要读入程序的文件是一个.txt,称之为numbers.txt,其格式为 75694 13265 98654 我想把每一个数字读入一个秩为2的数组,所以数组的形状是[35]。我的方法的问题似乎正在发展到一个新的记录,我对隐含的DOs没有很好的理解: program f3 implicit none integer, dimension(3,5) :: arr integer :: i, j open(unit=15,file="numbers.txt") ! Only at

Io 向控制台输出Agda程序

我已经使用Agda 9个月了。我第一次发现自己想要“运行”(作为顶级可执行文件)一个打印字符串的Agda程序。叫我老古板 我可以编写一个计算字符串的程序,让Agda在交互模式(或Emacs)下显示字符串的值。但是字符串很长,并且嵌入了换行符。我想把它打印出来 作为比较,在GHCi中,我可以这样做: Prelude> putStrLn "hello, world!" hello, world! 但在Agda的交互模式下,我得到了以下信息: Main> putStrLn "hello,

Io 带原始设备fd的fsync

我对fsync+directio感到困惑 下面的代码很容易理解: fd = open(filename, O_RDWR, 00644); write(fd, data, size); fsync(fd); 在这种情况下,write将数据写入页面缓存,fsync将强制fd引用的页面缓存中的所有修改数据写入磁盘设备 但是如果我们打开一个带有O_DIRECT标志的文件,就像这样 fd = open(filename, O_RDWR|O_DIRECT, 00644); write(fd, data,

Io 在不知道已保存数据的变量名的情况下,如何在倍频程中使用load函数?

我有几个具有相同形状矩阵的100*.mat文件。但随着时间的推移,这些矩阵被保存为不同的名称。让我们假设这个例子是a或b 现在如何在不知道名称的情况下使用新名称加载和处理此数据 if条件不是选项,因为有太多不同的名称 我已经试过了: data = load('example_file.mat') 但是我需要再次使用旧的变量名来访问带有data.a或data.b的矩阵 我需要的是: load('example_file.mat') as matrix 这在八度音阶中可能吗?您的尝试 data

Io 在haskell中读取大文件?

我一直在尝试读取haskell中的一个大文件 我需要使用一个大学项目的自定义算法来压缩它。一切正常,直到我开始压缩大文件 我从我的程序中提取出了出错的地方,并在这里以“Hello大文件”的形式将其公开: 谁能解释一下为什么我需要500兆内存和30秒的CPU来浏览一个可怜的5兆文件?请问我做错了什么?为什么[word8]没有按照ByteString文档的状态进行缓冲。如何解决这个问题 我试图定义自己的尾部递归折叠,而不是foldl、foldr或foldl’。 我也试着用seq解冻thunks。 我

Io 在mpi中,darray和subarray之间有什么区别?

我有一个并行编程类的并行I/O项目,我必须实现派生的数据类型。我不清楚darray和subarray之间的区别。darray是否可以从动态分配的数组中派生?主要区别是什么?子阵列允许您描述更大多维数组的单个块/片。如果每个MPI任务都有一个大型全局数组的单个片/块(或者如果您在任务之间通信本地数组的块),那么MPI_Type_create_子数组就是一种方法;语法非常简单。对于解决规则网格上的PDE之类的问题,这种分布非常常见——每个处理器都有自己的全局网格块,其网格单元尽可能多地位于局部。在M

Io 如何解释ksar、sar上的I/O

设备:rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq sz avgqu sz WAIT svctm%util sda 0.01 1.38 0.02 0.51 0.37 7.56 29.42 0.02 31.72 6.15 0.33 sda1 0.00 0.00 0.00 0.00 0.00 53.57 0.00 71.60 15.33 0.00 sda2 0.00 0.00 0.00 0.00 0.00 38.77 0.00 14.13 13.56 0.00 sd

Io 是否有真正的程序检查文件关闭错误?

我从未见过检查文件是否正确关闭的真正用途。我是说,如果它不关,那又怎样?你没有什么聪明的事可做。此外,我不确定是否存在一个真实的用例,其中非写入/读取/刷新将失败,只有关闭将失败 是否有人实际使用了关闭(2)的返回值close?: 如果在应用程序中使用信号,关闭可能会被中断(EINTR) 编辑:也就是说,除非我准备好处理这种情况并编写100%防傻瓜的代码,否则我很少麻烦。Windows内核从未期望文件系统在关闭操作时失败。即文件系统驱动程序必须无条件完成操作。但我不知道其他操作系统。这和我问的不

Io 具有历史记录支持的OCaml readline

我想要类似Python的东西,但要用OCaml。我正在编写一个OCaml程序,它像shell或REPL一样接收输入,我想添加用箭头键提示的历史记录。是否有提供此功能的库或内置程序?以下,opam搜索阅读行显示: --这看起来可以以很少的开销提供您所需要的特定功能 --这看起来功能更全面、更灵活,但使用起来可能更复杂一些 我制作了一个在Linenoise库上进行抽象的库,以提供readline功能。它还提供了在接受输入之前等待输入分隔符的功能 Ocmline:是的,有很多这样的库,Zed、lin

Io 将所有输出重定向到Julia中的文件

我想知道如何将给定调用的任何输出重定向到一个文件,以便该文件包含通常显示在REPL中的内容 我知道该软件包是一个有趣的切入点,几乎可以满足我的需要,但例如: using DataFrames using Suppressor output = @capture_out begin dtf = DataFrame( [8.04 9.14 7.46 6.58; 6.95 8.14 6.77 5.76; 8.33 9.2

什么是交互式回复IO功能?

我学习CommonLisp已经有一段时间了,我遇到了一个问题 我如何实现这样一个功能,允许用户输入一些单词,直到用户输入退出。 (实际上我想知道什么样的命令行交互函数API适合这样的需求) e、 g。 提示“请输入一个单词:”在REPL中,然后将用户输入存储到全局“我的单词”中,当用户输入“退出”时退出。您的规范有点不完整(例如,您的问题中的单词由什么组成?如果用户添加多个单词怎么办?如果输入为空怎么办?)。下面我用它将输入拆分成不同的单词,并一次将它们全部添加,因为它在一般情况下似乎很有用。在

上一页 1 2 ...  10   11   12   13    14   15   16  ... 下一页 最后一页 共 19 页