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