Ejemplo n.º 1
0
        public string ToString()
        {
            const int length = 32 + 4 + 1;
            byte *    str    = stackalloc byte[length];

            for (int i = 0, i2 = 0; i != 16; ++i, i2 += 2)
            {
                if (i == 4 || i == 6 || i == 8 || i == 10)
                {
                    char delimiter = '-';
                    Text.Encoding.ASCII.GetBytes(&delimiter, 1, &str[i2], 1);
                    ++i2;
                }
                Number.sprintf(&str[i2], "%02x", data[i]);
            }
            str[32 + 4] = 0;

            var charArray = stackalloc char[length + 1];

            for (int i = 0; i != length; ++i)
            {
                charArray[i] = (char)str[i];
            }
            charArray[length] = '\0';
            return(new string(charArray));
        }
Ejemplo n.º 2
0
        public unsafe string ToString()
        {
            byte *str    = stackalloc byte[Number.SingleNumberBufferLength + 1];
            int   length = Number.sprintf(str, "%G", this);

            str[Number.SingleNumberBufferLength] = 0;
            var charArray = stackalloc char[length + 1];

            for (int i = 0; i != length; ++i)
            {
                charArray[i] = (char)str[i];
            }
            charArray[length] = '\0';
            return(new string(charArray));
        }