调用InputBox为字符串数组赋值报错,请求技术排查解决
数组赋值错误修正及代码修复
你的代码存在两个关键问题,导致编译或运行错误:
- 数组赋值方式错误:你直接将InputBox返回的字符串赋值给整个数组变量
arrNames,但数组是元素的集合,必须通过索引指定具体元素才能赋值,也就是arrNames[i]。 - InputBox参数缺失:Delphi的
InputBox函数需要三个必填参数:窗口标题、提示文本、默认输入值,你只传入了一个参数,这会触发编译错误。
修正后的代码如下:
var arrNames: array[1..10] of string; i: integer; begin for i := 1 to 10 do arrNames[i] := InputBox('输入姓名', '请输入第' + IntToStr(i) + '个姓名', ''); end;
说明:
arrNames[i]:利用循环变量i定位数组的当前元素,将用户输入的字符串赋值给该位置。- 补充了
InputBox的完整参数,第二个参数增加了序号提示,让用户更清楚当前输入的是第几个姓名,第三个参数传入空字符串作为默认输入内容。
内容的提问来源于stack exchange,提问作者Leonard Mayaba
相关产品推荐
相关产品推荐

