Хорошо, я бы хотел опубликовать свой более полный ответ. Спасибо @njuffa за то, что он указал в комментарии ниже на мои вопросы, что «Вероятно: uw
означает« беззнаковое слово »в некотором роде Венгерская запись », благодаря @ PeterJ_01 за , указав что генеральный директор Stack Overflow имеет некоторые мнения по этому вопросу, и благодаря @Sigve Kolbeinson за указание в комментарии под ответом PeterJ_01, что генерального директора Stack Overflow зовут Джоэл Спольски (как указано в ссылке), он на самом деле не ненавидит венгерскую нотацию, а просто огорчает ее ограниченную и искаженную форму [Systems Hungarian] некоторое время набирала обороты, и за то, что дали нам ссылку на статью , чтобы мы могли узнать подробнее и сами читайте статью.
1. Вот мой вывод, чтобы ответить на мой вопрос:
uw
в начале многих примеров переменных STM32 определенно должно логически означать «беззнаковое слово», где «слово» в данном случае составляет 32 бита. Знание этого добавляет много ясности, когда я читаю код, и устраняет некоторую путаницу в именах, поэтому я рад это знать.
В данном случае это тип использования Systems Hungarian , который часто не рекомендуется использовать для языков с явными типами, таких как C и C ++, поскольку он избыточен и добавляет мало значения. Сравните это с Apps Hungarian , который я опишу ниже, которого Джоэл Спольски (генеральный директор Stack Overflow) настоятельно рекомендует как способ помочь «неправильному коду выглядеть неправильно».
2. Вот некоторые дополнительные сведения (в основном о венгерской нотации), которые я узнал по пути от @Sigve и @njuffa через их комментарии и предоставленные ссылки:
Вы можете просто назвать этот раздел «что такое венгерская запись в компьютерном программировании?»
- Венгерская нотация существует (я не знал об этом раньше) и относится к концепции добавления нескольких дополнительных символов в начале каждой переменной и / или имени функции для предоставления дополнительной информации о переменная или функция, например, цель , тип или тип возврата .
- Случайно это ответило и на мой вопрос о соглашениях по присвоению имен FreeRTOS. Теперь я знаю! Они также используют [в первую очередь системы] венгерскую запись. Вот несколько ссылок. Обратите внимание, что в первой ссылке вы увидите список всех использований венгерской нотации в FreeRTOS. Эта нотация почти полностью является нотацией Systems Hungarian, но, возможно, она также использует немного нотации Apps Hungarian, когда они указывают имя файла , в котором функции и макросы определяются прямо внутри имени функции или макроса.
- Венгерская нотация имеет две основные формы: Системы венгерского и Приложения венгерского . Смотрите их различия здесь .
- Systems Hungarian по сути является искажением первоначального намерения «венгерской» нотации, возникшей, когда ее создатель, Чарльз Симони, ошибочно использовал слово «тип» вместо «вид» в своем описании это ( источник ). Первоначальная цель Чарльза состояла в том, чтобы закодировать дополнительную информацию в имена переменных, которая не присуща самому языку программирования. Тем не менее, Systems Hungarian нотация говорит, в основном, для хранения переменной type в имени переменной. Пример:
unsigned long myVar
теперь становится unsigned long ulMyVar
. Большинство людей, кажется, утверждают, что это либо ограниченное использование, либо совершенно бесполезное. Джоэл Сполкси не является сторонником этой формы венгерской нотации , как указано в его статье , но он решительно для Apps венгерского стиля. Другие мнения можно найти в разделе «Известные мнения» статьи Википедии здесь . - Apps Hungarian описывает концепцию хранения дополнительной информации в начале имени переменной, которая иначе НЕ может быть легко выведена, например, использование
us
для обозначения " u nsafe" s tring "и s
в значении" safe s tring ". Многие люди либо чувствуют себя более нейтрально к этому методу, либо любят его и продвигают. И Джоэл Спольски (генеральный директор Stack Overflow), и Стив Макконнел считают эту идею хорошей и продвигают ее использование.
Обратите внимание, вот полезный отрывок из Статья Джоэла :
Кто-то где-то читал статью Симони, где он использовал слово «тип», и думал, что он имел в виду тип, как класс, как в системе типов, как проверка типов, которую выполняет компилятор. Он не делал. Он очень тщательно объяснил, что именно он имел в виду под словом «тип», но это не помогло. Ущерб был нанесен.
Apps Hungarian имел очень полезные, значимые префиксы , такие как «ix» для обозначения индекса в массиве, «c» для обозначения числа, «d» для обозначения разницы между двумя числами (например, «dx» означает «ширина») и т. д.
Системы венгерские имели гораздо менее полезные префиксы , такие как «l» для long и «ul» для «unsigned long» и «dw» для двойного слова, что на самом деле, ну без знака долго. В Systems Hungarian единственное, что вам сказал префикс, - это фактический тип данных переменной.
Это было тонкое, но полное неправильное понимание намерений и практики Симони ...
(выделение добавлено)