Сначала я хочу поделиться с вами this репозиторий на Github, где упоминается несколько хороших практик в текущее время программирования в C. Здесь упоминается, что:Никогда не изменять состояние в выражении
Никогда не изменить состояние в выражении [...]
В этой связи я хотел бы знать, в чем разница.
trie_add(*child, ++word); // Bad
и
trie_add(*child, word + 1); // Good
Может кто-то объяснить это более подробно?
Первого изменяет значение 'слово' в качестве стороны эффект. Является ли это * хорошим * или * плохим * основанным на мнениях. –
Распечатайте значение 'word' после обоих утверждений, и вы увидите разницу. – Kninnug
Итак, [компактная реализация 'strcpy'] (https://en.wikibooks.org/wiki/C_Programming/C_Reference/string.h/strcpy#Usage_and_implementation) плоха? :-P –