2013-04-23 34 views
0

我有這個問題。我手動初始化在下面的代碼中註釋的數組,我想要一個函數來做到這一點,它不關心值是什麼。我無法做到這一點,當我在函數的結尾打印時,所有內容都是0.任何關於這個的想法?C GLubyte Array

GLubyte *createGraphIndices(int size){ 


    GLubyte * graphIndices = malloc(size * sizeof(GLubyte)); 
    int i; 

    for(i = 0; i < (size/2)-1; ++i){ // até 
     graphIndices[i] = i; 
    } 
    for(i = (size/2)-1; i < size-2; ++i){ // até 
     graphIndices[i] = i; 
    } 

    for(i = 0; i < size; ++i){ // até 
     fprintf(stderr, "%f\n", graphIndices[i]); 
    } 
    return graphIndices; 
} 
// GLubyte graphIndices[] = { 
// 
// 0,1, 
// 1,2, 
// 2,3, 
// 3,4, 
// 4,5, 
// 5,6, 
// 6,7, 
// 7,8,     
// 9,10, 
// 10,11, 
// 11,12, 
// 12,13, 
// 13,14, 
// 14,15, 
// 15,16, 
// 16,17 
// }; 
+0

你在哪裏設置大小的陣列?它不是一個向量,它不會動態擴展 – 2013-04-23 18:40:13

+0

malloc爲我做的不是嗎? – 2013-04-23 20:34:30

+0

沒錯,跳過那一行... – 2013-04-24 05:32:07

回答

1

你打印他們作爲浮動

fprintf(stderr, "%f\n", graphIndices[i]); 

,你應該把它們打印爲整數

fprintf(stderr, "%d\n", graphIndices[i]);