Правда в том, что ваш код даже не должен компилироваться из-за этих строк:
float range=[0,255];
bool uniform=true;1
Прежде чем ответить на этот вопрос, я должен сказать, что я думаю, что вы можете извлечь большую пользу из этого поста: Написание идеального вопроса
Я не знаю, что именно вы пытаетесь сделать с этим кодом, но следующие компиляции не вылетают:
int histsize = 16;
float range[] = { 0, 255 };
float* ranges[] = { range };
bool uniform = true;
CvHistogram* hist = cvCreateHist(1, &histsize, CV_HIST_ARRAY, ranges, uniform);