Я посылаю массив для функции frekvens_of_array
и его размер. Проблемы постоянно говорят мне, что я не могу сравнить pointer
и int
. Я пытаюсь вставить новый уникальный номер в frekvens
и добавить 1+, чтобы каждый раз набирать номер в alanyzed_array
Не удается сравнить указатель и int, C
Когда я создаю эту программу, я получаю ошибки и предупреждения, подобные приведенным ниже.
if(frekvens[j] != analyzed_arr[i])
warning: comparision between pointer and integer [enable by default]
frekvens[j] = analyzed_arr[i];
error: incompatible types when assaigning to type 'int[1]' from type 'int'
int frekvens_of_array(int analyzed_arr[100], int array_size){
int frekvens[100][1];
int i = 0;
int j = 0;
int n = 0;
int hit = 0;
for(i = 0; i < array_size; i++){
if(frekvens[j] != analyzed_arr[i]){
frekvens[j] = analyzed_arr[i];
for(n = 0; n < array_size; n++){
if(frekvens[j] == analyzed_arr[n]){
hit++;
}
}
frekvens[j][0] = hit;
j++;
}
}
return 0;
}
int main(void){
int ange_tal_array[100];
int array_size = 100;
frekvens_of_array(ange_tal_array, array_size);
return 0;
}
Почему вы используете двумерный массив 100 * 1 вместо одномерного массива? – interjay
Не могли бы вы объяснить, что должен делать этот код? Вы читаете «frekvens» без инициализации каких-либо его значений. –