По какой-то нечетной причине я копировал пример на другом языке, который не использует типы, и забыл добавить его в параметр определения функции, и он сработал.
#include <stdio.h>
char toChar(n) {
//sizeof n is 4 on my 32 bit system
const char *alpha = "0123456789ABCDEF";
return alpha[n];
}
int main() {
putchar(toChar(15)); //i.e.
return 0;
}
Я уверен, что основные умолчания для int большинством компиляторов некоторого стандартного (но только возврата), является ли это также истинным положением для других функций, или эта реализация определена? Кажется, это просто необычно, мой компилятор - это немного устаревший GCC-порт (MinGW).