技术论坛

 回复:string的当前字符长度? 斑竹、Automann、芳季帮忙看看,谢谢了

返回主题列表
作者 主题
小oo鱼
侠客

经验值:705
发帖数:70
精华帖:3
楼主    2014-05-28 13:49:55
主题:string的当前字符长度? 斑竹、Automann、芳季帮忙看看,谢谢了
在S7的帮助中知道,string[4]='AB', byte0=4=最大字符长度,byte1=2=当前字符长度,byte2=A,byte2=B.但是我在变量表监视,byte1=0。这是怎么回事?
斑竹、Automann、芳季帮忙看看,谢谢了
Automann
至圣

经验值:18299
发帖数:6168
精华帖:137
7楼    2014-05-30 23:19:00
精华帖  主题:回复:string的当前字符长度? 斑竹、Automann、芳季帮忙看看,谢谢了
我找到字符串前两个字节需要由写入者管理的官方证据了。在线帮助中搜索“复杂数据类型”,双击其中的STRING,显示“数据类型STRING的格式”,其中有这样一段话程序:

必须在初次使用之前,由用户初始化数据类型STRING的动态本地数据;例如,使用STL顺序形式:
LAR1 P#local_string_var // Local_string_var在VAR_TEMP中声明为STRING[200]
L 200 // 输入如上指定的STRING长度
T LB [AR1, P#0.0] // 在字符串的最大长度字节中
L 5 // 字符串的实际长度
T LB [AR1, P#1.0] // 输入字符串的实际长度

看来的确不是用户用变量表在定义的字符串地址区中增、减字符后,操作系统就自动管理字符串的前两个字节。但是有两种情况可能是例外:
1. 定义字符串和它的初始字符时(见我提供的图)。
2. 如zane版主所说,执行了字符串操作的相关功能块之后,生成了新的字符串或改变了字符串的内容时。
追求完美
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。