StringSetCharacter
StringSetCharacter
返回true,表示符号已成功插入到传递的字符串中。
bool StringSetCharacter(
string& string_var, // string
int pos, // position
ushort character // character
);参数
- string_var
[in][out] 字符串。
- pos
[in] 字符串中字符的位置。范围从0到StringLen(文本)。
- character
[in] 符号代码Unicode值。
返回值
成功则返回true,否则返回false。
注意
如果pos小于string长度且符号代码值等于0,则字符串会被截断(但分配给字符串的[缓冲区大小](../stringbufferlen/)保持不变)。字符串长度将等于pos。
如果pos等于字符串长度,则指定符号将被添加到字符串末尾,并且长度增加1。
示例:
void OnStart()
{
string str="0123456789";
Print("before: str = ",str,",StringBufferLen(str) = ",
StringBufferLen(str)," StringLen(str) = ",StringLen(str));
//--- add zero value in the middle
StringSetCharacter(str,6,0);
Print("after: str = ",str,",StringBufferLen(str) = ",
StringBufferLen(str)," StringLen(str) = ",StringLen(str));
//--- add symbol at the end
int size=StringLen(str);
StringSetCharacter(str,size,'+');
Print("addition: str = ",str,",StringBufferLen(str) = ",
StringBufferLen(str)," StringLen(str) = ",StringLen(str));
}
/* Result
before: str = 0123456789 ,StringBufferLen(str) = 0 StringLen(str) = 10
after: str = 012345 ,StringBufferLen(str) = 16 StringLen(str) = 6
addition: str = 012345+ ,StringBufferLen(str) = 16 StringLen(str) = 7
*/参见
最后更新于