С этими переменными:
NSInteger dataStart;
uint64_t dataSize[1];
const unsigned char *beginning;
NSInteger bytesEnd;
... при этих значениях:
dataStart = 499
dataSize[0] = 427
beginning = 9060864
bytesEnd = 9061793
... следующий код:
NSLog(@"dataStart = %d, dataSize[0] = %d, beginning = %d, bytesEnd = %d",
dataStart, dataSize[0], (NSInteger)beginning, bytesEnd);
... отправляет это на консоль:
dataStart = 499, dataSize[0] = 427, beginning = 0, bytesEnd = 9060864
Другими словами, после массива был вставлен дополнительный ноль, что привело к увеличению других переменных. Это делает это последовательно. Я использую xcode 3.2.3. Что здесь происходит?
[Изменить для выделения: это не просто старый фаворит печати нуля, где значение должно быть, потому что приведение неверно. Он вставляет дополнительный ноль, затем печатает правильное значение начала, где он должен печатать bytesEnd, а не печатает bytesEnd.]
Спасибо