- •Так как исходный тип char знаковый, а число положительное, то расширяем представление нулем
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения оператора
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
- •Результат выполнения операции
Результат выполнения оператора
printf ("%u", char(~-5)); 4
и его обоснование:
1. 4 2. 177
3. 4294967217
4. исходное представление значения выражения (для знакового типа) «расширяется» знаковым битом, который в данном представлении числа есть 0
5. исходное представление значения выражения (для знакового типа) «расширяется» знаковым битом, который в данном представлении числа есть 1 6. исходное представление значения выражения (для беззнакового типа) «расширяется» нулем, независимо от значения знакового бита в представлении 7. единицу в знаковом разряде итогового логического представления числа спецификатор d интерпретирует как «минус»
8. единицу в знаковом разряде итогового логического представления числа спецификатор u интерпретирует как значение 9. исходное логическое представление выражения занимает 1 байт 10. исходное логическое представление выражения занимает 4 байта
11. итоговое логическое представление выражения занимает 1 байт 12. итоговое логическое представление выражения занимает 4 байта
13. 0 в знаковом разряде итогового логического представления числа спецификатор d интерпретирует как «плюс»
14. вычисляем значение числа
15. 252 16. -74
Результат выполнения оператора
printf ("%d", unsigned char(~-5)); 4
и его обоснование:
1. 4
2. 177
3. 4294967217
4. исходное представление значения выражения (для знакового типа) «расширяется» знаковым битом, который в данном представлении числа есть 0
5. исходное представление значения выражения (для знакового типа) «расширяется» знаковым битом, который в данном представлении числа есть 1 6. исходное представление значения выражения (для беззнакового типа) «расширяется» нулем, независимо от значения знакового бита в представлении 7. единицу в знаковом разряде итогового логического представления числа спецификатор d интерпретирует как «минус»
8. единицу в знаковом разряде итогового логического представления числа спецификатор u интерпретирует как его значение 9. исходное логическое представление выражения занимает 1 байт 10. исходное логическое представление выражения занимает 4 байта
11. итоговое логическое представление выражения занимает 1 байт 12. итоговое логическое представление выражения занимает 4 байта
13. 0 в знаковом разряде итогового логического представления числа спецификатор d интерпретирует как «плюс»
14. вычисляем значение числа
15. 252
16. -74
Результат выполнения оператора
printf ("%u", unsigned char(~-5)); 4
и его обоснование:
1. 4 2. 177
3. 4294967217
4. исходное представление значения выражения (для знакового типа) «расширяется» знаковым битом, который в данном представлении числа есть 0
5. исходное представление значения выражения (для знакового типа) «расширяется» знаковым битом, который в данном представлении числа есть 1 6. исходное представление значения выражения (для беззнакового типа) «расширяется» нулем, независимо от значения знакового бита в представлении 7. единицу в знаковом разряде итогового логического представления числа спецификатор d интерпретирует как «минус»
8. единицу в знаковом разряде итогового логического представления числа спецификатор u интерпретирует как значение 9. исходное логическое представление выражения занимает 1 байт 10. исходное логическое представление выражения занимает 4 байта
11. итоговое логическое представление выражения занимает 1 байт 12. итоговое логическое представление выражения занимает 4 байта
13. 0 в знаковом разряде итогового логического представления числа спецификатор d интерпретирует как «плюс»
14. вычисляем значение числа
15. 252
16. -74