Ошибка "Необъявленный идентификатор" препятствует успешной компиляции - C (СИ)
Формулировка задачи:
Подправьте код, что то не компилируется, не пойму в чем дело, на .cpp норм, а .с выдает ошибки
int max(int a, int b);синтаксическая ошибка: тип
Bubble(data,SIZE, min);min: необъявленный идентификатор
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- #define SIZE 10
- int max(int a, int b);
- int min(int a, int b);
- void Bubble(int* d, int n, int (*comp)(int,int));
- void Bubble(int* d, int n, int (*comp)(int,int)){
- int i,j;
- int buf;
- for(i=1;i<n;i++)
- for(j=0;j<n-i;j++)
- if(comp(d[j],d[j+1])){
- buf=d[j];d[j]=d[j+1]; d[j+1]=buf;
- }
- }
- int max(int a, int b){
- return a<b;
- }
- int min(int a, int b){
- return !max(a,b);
- }
- void main(){
- int i;
- int data[SIZE]={12,5,-6,25,3,0,7,34,-8,-88};
- Bubble(data,SIZE, min);
- for(i=0;i<SIZE;i++) printf("%d ", data[i]);
- printf("\n");
- system("pause");
- }
Решение задачи: «Ошибка "Необъявленный идентификатор" препятствует успешной компиляции»
textual
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #define SIZE 10
- int max_compare(const void* a, const void* b);
- int min_compare(const void* a, const void* b);
- void Bubble(int* d, int n, int (*comp)(const void* a, const void* b));
- void main(){
- int i;
- int data[SIZE]={12,5,-6,25,3,0,7,34,-8,-88};
- Bubble(data,SIZE, min_compare);
- for(i=0;i<SIZE;i++) printf("%d ", data[i]);
- printf("\n");
- system("pause");
- }
- void Bubble(int* d, int n, int (*comp)(const void* a, const void* b)){
- int i,j;
- int buf;
- for(i=1;i<n;i++)
- for(j=0;j<n-i;j++)
- if(comp(&d[j],&d[j+1])){
- buf=d[j];d[j]=d[j+1]; d[j+1]=buf;
- }
- }
- int max_compare(const void* a, const void* b){
- int aa = *(const int* )a;
- int bb = *(const int* )b;
- return aa<bb;
- }
- int min_compare(const void* a, const void* b){
- return !max_compare(a,b);
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д