Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
#include <stdio.h>
#include <typeinfo>
int main () {
char x = 1;
int i = 1;
printf("type:%s\n", typeid(x+x).name());
printf("type:%s\n", typeid(x).name());
printf("type:%s\n", typeid(i).name());
return 0;
}
на платформах, где char — знаковый тип
-funsigned-char.-funsigned-char, то в GCC 4.4/4.5/4.6/4.7 и Clang месячной давности всё работает правильно с любыми оптимизациями (1 1 1… 1 1 0).int foo (signed char x) {
signed char y = x;
//x++; // #1
x=x+1; // #2
return x > y;
}
signed char x = 'a';
x = x + 1;
Маленькая C-функция из преисподней