Ну, сегодня я сделал небольшую функцию, которая должна генерировать мне небольшую случайную строку.modulo - неправильный порядок операнда gcc? или UB?
std::string randString(size_t length)
{
std::string randStr;
for(unsigned int i = 0; i < length; i++)
randStr.append(1, (char) rand() % 26 + 65);
return randStr;
}
Я ожидал получить только заглавные буквы, но на самом деле я получил также другие символы, такие как «3» или «)» тоже. Поэтому я предположил, что есть какой-то порядок ошибки операнда. И с круглыми скобками по модулю я получаю ожидаемый результат! Я дополнительно искал порядок работы как по модулю, так и по добавлению, и он говорит, что modulo имеет более высокий приоритет! Может ли кто-нибудь объяснить мне, почему я должен выслушать этот модуль?
Я использую GCC 4.1.2
оператора приоритет ... – devnull