Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Indexing 尝试使用索引修改字符串时出现语法错误_Indexing_Variable Assignment_In Place_Apl_Dyalog - Fatal编程技术网

Indexing 尝试使用索引修改字符串时出现语法错误

Indexing 尝试使用索引修改字符串时出现语法错误,indexing,variable-assignment,in-place,apl,dyalog,Indexing,Variable Assignment,In Place,Apl,Dyalog,我在美国学习APL 为什么会出现这种语法错误 'computer' [ 1 2 3 ] ← 'COM' SYNTAX ERROR 'computer'[1 2 3]←'COM' ^ 但是如果我将'computer'保存在一个变量中,我不会得到错误: T ← 'computer' T computer T[1 2 3] ← 'COM' T COMputer 我做错了什么?那个括号符号是专门用来修改变量的。T[1 2

我在美国学习APL

为什么会出现这种语法错误

      'computer' [ 1 2 3 ] ← 'COM'
SYNTAX ERROR
'computer'[1 2 3]←'COM'
          ^
但是如果我将
'computer'
保存在一个变量中,我不会得到错误:

      T ← 'computer'
      T
computer
      T[1 2 3] ← 'COM'
      T
COMputer

我做错了什么?

那个括号符号是专门用来修改变量的。
T[1 2 3]的返回值← 'COM'
'COM'
,因此,如果表达式没有修改变量,它将毫无意义(或者,几乎与

要获取修改的数组,而不是修改变量,请使用运算符:


括号符号是专门用来修改变量的。
T[1 2 3]的返回值← 'COM'
'COM'
,因此,如果表达式没有修改变量,它将毫无意义(或者,几乎与

要获取修改的数组,而不是修改变量,请使用运算符:


“计算机”
是一个常量,您不能更改常量本身的值,只能更改变量的当前值

想一想:如果你可以分配给
'computer'
,那么下次你写
'computer'
,你会期望结果是
computer
2怎么样←3
?显然,这没有任何意义

但是,您可以使用相对较新的
@
“at”运算符修改值,而无需将其指定给名称(它不包括在Mastering Dyalog APL中,但是)

您可以将字母“COM”读入“computer”一词的索引1 2 3中。
此处仅用于将
1 2 3
'计算机
分开,因此
@
很清楚索引的构成以及要修改的数组


“计算机”
是一个常量,您不能更改常量本身的值,只能更改变量的当前值

想一想:如果你可以分配给
'computer'
,那么下次你写
'computer'
,你会期望结果是
computer
2怎么样←3
?显然,这没有任何意义

但是,您可以使用相对较新的
@
“at”运算符修改值,而无需将其指定给名称(它不包括在Mastering Dyalog APL中,但是)

您可以将字母“COM”读入“computer”一词的索引1 2 3中。
此处仅用于将
1 2 3
'计算机
分开,因此
@
很清楚索引的构成以及要修改的数组

('COM'@1 2 3) 'computer'
      'COM'@1 2 3⊢'computer'
COMputer