Understanding FFT size in OFDM modulation I know that the FFT size is the the number of subcarriers OFDM system have. But I also know that the FFT has to be $ 2^N $ big (in order to process N samples from time domain to frequency domain). 

But here in Matlab I can set my N to 333 for example, and The program will run without any problem (of course, the constellation diagrams will be different if I use for example N = 256, but that's just it). Why is that? Did I misunderstand something?



1) Also, If I have 1024-OFDM modulation, and the constellation on subchannels is 64 QAM, my FFT size is in the name of the modulation, right? Is it 1024?. Because 64 is the number of constellation points (size of the QAM symbols), so it can't be it.
An FFT does not need to be of length 2^N.  However, FFTs of lengths that are a multiple of only tiny primes run faster.  If you don't mind slower performance (or higher CPU utilization), you can use any length.

Note that multiple modulations can be combined, for instance, modulation of each subcarrier, and modulation of a collection of carriers.  Each can be different, thus differently named.  For instance, each subcarrier in an OFDM system can have a different size of QAM constellation.