curiosity with vector in c -


i wrote little little program in c, , expected error vectors.

#include <stdlib.h> #include <stdio.h>  main(){        int vet[0];        vet[0] = 1;        vet[1] = 2;        vet[2] = 2;        vet[3] = 2;        vet[4] = 2;        vet[5] = 2;        vet[6] = 2;        vet[7] = 2;        int x;        for(x=0;x<19;x++) printf("%d\n", vet[x]);          system("pause"); } 

before writing code thought add element vector, size, should call malloc function, discovered without malloc function code works fine. question is, why should use malloc function if in case it's useless? , why should write dimension of vector when initialize ?

because, writing memory never allocated, causing undefined behaviour. works, doesn't, makes dog explode.


Comments

Popular posts from this blog

assembly - 8086 TASM: Illegal Indexing Mode -

javascript - addthis share facebook and google+ url -

Java, LWJGL, OpenGL 1.1, decoding BufferedImage to Bytebuffer and binding to OpenGL across classes -