mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-05-15 06:05:58 -06:00
Core: String::Make
This commit is contained in:
parent
9458f03c96
commit
54226f44d3
6 changed files with 278 additions and 4 deletions
202
autotest/MakeString/Etalon.log
Normal file
202
autotest/MakeString/Etalon.log
Normal file
|
|
@ -0,0 +1,202 @@
|
|||
* C:\upp\out\autotest\CLANGx64.Debug.Debug_Full\MakeString.exe 12.09.2021 08:56:40, user: cxl
|
||||
|
||||
Make(max(i, 14), i) =
|
||||
Make(max(i, 31), i) =
|
||||
Make(max(i, 40), i) =
|
||||
Make(max(i, 200), i) =
|
||||
Make(max(i, 14), i) = A
|
||||
Make(max(i, 31), i) = A
|
||||
Make(max(i, 40), i) = A
|
||||
Make(max(i, 200), i) = A
|
||||
Make(max(i, 14), i) = AB
|
||||
Make(max(i, 31), i) = AB
|
||||
Make(max(i, 40), i) = AB
|
||||
Make(max(i, 200), i) = AB
|
||||
Make(max(i, 14), i) = ABC
|
||||
Make(max(i, 31), i) = ABC
|
||||
Make(max(i, 40), i) = ABC
|
||||
Make(max(i, 200), i) = ABC
|
||||
Make(max(i, 14), i) = ABCD
|
||||
Make(max(i, 31), i) = ABCD
|
||||
Make(max(i, 40), i) = ABCD
|
||||
Make(max(i, 200), i) = ABCD
|
||||
Make(max(i, 14), i) = ABCDE
|
||||
Make(max(i, 31), i) = ABCDE
|
||||
Make(max(i, 40), i) = ABCDE
|
||||
Make(max(i, 200), i) = ABCDE
|
||||
Make(max(i, 14), i) = ABCDEF
|
||||
Make(max(i, 31), i) = ABCDEF
|
||||
Make(max(i, 40), i) = ABCDEF
|
||||
Make(max(i, 200), i) = ABCDEF
|
||||
Make(max(i, 14), i) = ABCDEFG
|
||||
Make(max(i, 31), i) = ABCDEFG
|
||||
Make(max(i, 40), i) = ABCDEFG
|
||||
Make(max(i, 200), i) = ABCDEFG
|
||||
Make(max(i, 14), i) = ABCDEFGH
|
||||
Make(max(i, 31), i) = ABCDEFGH
|
||||
Make(max(i, 40), i) = ABCDEFGH
|
||||
Make(max(i, 200), i) = ABCDEFGH
|
||||
Make(max(i, 14), i) = ABCDEFGHI
|
||||
Make(max(i, 31), i) = ABCDEFGHI
|
||||
Make(max(i, 40), i) = ABCDEFGHI
|
||||
Make(max(i, 200), i) = ABCDEFGHI
|
||||
Make(max(i, 14), i) = ABCDEFGHIJ
|
||||
Make(max(i, 31), i) = ABCDEFGHIJ
|
||||
Make(max(i, 40), i) = ABCDEFGHIJ
|
||||
Make(max(i, 200), i) = ABCDEFGHIJ
|
||||
Make(max(i, 14), i) = ABCDEFGHIJK
|
||||
Make(max(i, 31), i) = ABCDEFGHIJK
|
||||
Make(max(i, 40), i) = ABCDEFGHIJK
|
||||
Make(max(i, 200), i) = ABCDEFGHIJK
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKL
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKL
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKL
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKL
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLM
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLM
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLM
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLM
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMN
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMN
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMN
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMN
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNO
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNO
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNO
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNO
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOP
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOP
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOP
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOP
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQ
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQ
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQ
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQ
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQR
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQR
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQR
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQR
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRS
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRS
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRS
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRS
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRST
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRST
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRST
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRST
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTU
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTU
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTU
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTU
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUV
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUV
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUV
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUV
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVW
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVW
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVW
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVW
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWX
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWX
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWX
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWX
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXY
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXY
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXY
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXY
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`a
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`a
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`a
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`a
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abc
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abc
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abc
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abc
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcd
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcd
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcd
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcd
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcde
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcde
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcde
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcde
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefg
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefg
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefg
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefg
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgh
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgh
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgh
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgh
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghi
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghi
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghi
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghi
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklm
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklm
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklm
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklm
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmno
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmno
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmno
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmno
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnop
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnop
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnop
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnop
|
||||
Make(max(i, 14), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq
|
||||
Make(max(i, 31), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq
|
||||
Make(max(i, 40), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq
|
||||
Make(max(i, 200), i) = ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq
|
||||
31
autotest/MakeString/MakeString.cpp
Normal file
31
autotest/MakeString/MakeString.cpp
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
#include <Core/Core.h>
|
||||
|
||||
using namespace Upp;
|
||||
|
||||
String Make(int alloc, int chars)
|
||||
{
|
||||
String s = String::Make(alloc, [&](char *t) {
|
||||
for(int i = 0; i < chars; i++)
|
||||
*t++ = 'A' + i;
|
||||
return chars;
|
||||
});
|
||||
|
||||
if(s.GetAlloc() > 32)
|
||||
ASSERT(s.GetAlloc() < 2 * s.GetCount() + 32);
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
CONSOLE_APP_MAIN
|
||||
{
|
||||
StdLogSetup(LOG_COUT|LOG_FILE);
|
||||
|
||||
for(int i = 0; i < 50; i++) {
|
||||
DUMP(Make(max(i, 14), i));
|
||||
DUMP(Make(max(i, 31), i));
|
||||
DUMP(Make(max(i, 40), i));
|
||||
DUMP(Make(max(i, 200), i));
|
||||
}
|
||||
|
||||
CheckLogEtalon();
|
||||
}
|
||||
10
autotest/MakeString/MakeString.upp
Normal file
10
autotest/MakeString/MakeString.upp
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
uses
|
||||
Core;
|
||||
|
||||
file
|
||||
Etalon.log,
|
||||
MakeString.cpp;
|
||||
|
||||
mainconfig
|
||||
"" = "";
|
||||
|
||||
|
|
@ -354,6 +354,35 @@ void String0::Swap(String0& b)
|
|||
Dsyn(); b.Dsyn();
|
||||
}
|
||||
|
||||
template <class Maker>
|
||||
inline
|
||||
String String::Make(int alloc, Maker m)
|
||||
{
|
||||
String s;
|
||||
if(alloc <= 14) {
|
||||
int len = m(s.chr);
|
||||
ASSERT(len <= alloc);
|
||||
s.SLen() = len;
|
||||
s.Dsyn();
|
||||
}
|
||||
else {
|
||||
if(alloc < 32) {
|
||||
s.chr[KIND] = MEDIUM;
|
||||
s.ptr = (char *)MemoryAlloc32();
|
||||
}
|
||||
else
|
||||
s.ptr = s.Alloc(alloc, s.chr[KIND]);
|
||||
int len = m(s.ptr);
|
||||
ASSERT(len <= alloc);
|
||||
s.ptr[len] = 0;
|
||||
s.LLen() = len;
|
||||
s.SLen() = 15;
|
||||
if(alloc >= 32 && alloc > 2 * len)
|
||||
s.Shrink();
|
||||
}
|
||||
return s;
|
||||
}
|
||||
|
||||
force_inline
|
||||
void StringBuffer::Strlen()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -404,6 +404,9 @@ public:
|
|||
|
||||
template <class Maker>
|
||||
static String MakeSmall(Maker m) { String s; int n = m(s.chr); ASSERT(n <= 14); s.SLen() = n; s.Dsyn(); return s; }
|
||||
|
||||
template <class Maker>
|
||||
static String Make(int alloc, Maker m);
|
||||
};
|
||||
|
||||
inline std::string to_string(const String& s) { return std::string(s.Begin(), s.End()); }
|
||||
|
|
|
|||
|
|
@ -50,10 +50,9 @@ char *String0::Alloc(int count, char& kind)
|
|||
|
||||
void String0::SetL(const char *s, int len)
|
||||
{
|
||||
char *p = Alloc_(len, chr[KIND]);
|
||||
memcpy8(p, s, len);
|
||||
p[len] = 0;
|
||||
ptr = p;
|
||||
ptr = Alloc_(len, chr[KIND]);
|
||||
memcpy8(ptr, s, len);
|
||||
ptr[len] = 0;
|
||||
LLen() = len;
|
||||
SLen() = 15;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue