StringSetCharacter

Belirtilen konumundaki sembol değeri değiştirilmiş bir dizginin kopyasına dönüş yapar.

bool  StringSetCharacter(
   string&   string_var,       // dizgi
   int       pos,              // konum
   ushort    character         // karakter
   );

Parametreler

string_var

[in][out]  Dizgi.

pos

[in]  Karakterin dizgi içindeki konumu. 0 ile StringLen(metin) aralığında olabilir.

character

[in]  Sembol kodu (Unicode).

Dönüş değeri

Başarılı sonuç durumunda 'true', aksi durumda ise 'false' dönüşü yapar. Bir hata kodu almak için, GetLastError() fonksiyonunu çağırın.

Not

pos değeri dizgi uzunluğundan küçükse ve sembol kodu değeri 0 ise, dizgi budanır (ama dizgi için ayrılan tampon boyutu aynı kalır). Dizgi değeri 'pos' değerine eşit olur.

pos değeri, dizgi uzunluğuna eşitse, belirtilen sembol dizginin sonuna eklenir ve uzunluk bir artar.

Örnek:

void OnStart()
  {
   string str="0123456789";
   Print("önce: str = ",str,",StringBufferLen(str) = ",
         StringBufferLen(str),"  StringLen(str) = ",StringLen(str));
//--- ortasına sıfır ekle
   StringSetCharacter(str,6,0);
   Print("sonra: str = ",str,",StringBufferLen(str) = ",
         StringBufferLen(str),"  StringLen(str) = ",StringLen(str));
//--- sonuna bir sembol ekle
   int size=StringLen(str);
   StringSetCharacter(str,size,'+');
   Print("ek: str = ",str,",StringBufferLen(str) = ",
         StringBufferLen(str),"  StringLen(str) = ",StringLen(str));
  }
/* Sonuç
   önce: str = 0123456789 ,StringBufferLen(str) = 0   StringLen(str) = 10
    sonra: str = 012345 ,StringBufferLen(str) = 16   StringLen(str) = 6
   ek: str = 012345+ ,StringBufferLen(str) = 16   StringLen(str) = 7
*/

Ayrıca Bakınız

StringBufferLen, StringLen, StringFill, StringInit, CharToString, ShortToString, CharArrayToString, ShortArrayToString