29.04.24 #1
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Вместо индексации для перебора символов в строке пользоваться указателем char* и операциями инкремента/декремента
В функции Length() заменить индексацию массива str[length] на использование указателя *str и операцию инкремента str++, что позволяет перебирать символы в строке, перемещая указатель, вместо повторного вычисления смещения в массиве.
В функции CopyString() заменить индексацию массивов на использование указателей *destination и *source, а также операции инкремента destination++ и source++, чтобы скопировать строку. Это позволяет избежать повторного вычисления смещения в массивах.
while (length--) в функции CopyString() одновременно уменьшает length и проверяет на ноль. Эта конструкция является сокращенной формой записи для while (length > 0) с последующим уменьшением length на 1. Когда length достигнет нуля, условие length-- станет ложным, и цикл завершится.
Solved