Я запустил этот код в другой среде Linux, где он работает, но когда я запускаю этот код на моей машине, он показывает ошибку.
Код является:
void *functionC(void* ptr)
{
dint* pointer=(int*)ptr;
pthread_mutex_lock( &mutex1 );
int i;
for( i=pointer[0]; i <= pointer[1]; i++ )
{
sum += myarray[i];
}
pthread_mutex_unlock( &mutex1 );
}
Ошибка, которую я получил в моей машине:
aftab@aftab-VirtualBox:~/Downloads$ gcc -o out done1.c -lpthreads
done1.c: In function ‘functionC’:
done1.c:59:2: error: unknown type name ‘dint’
dint* pointer=(int*)ptr;
Ошибка, на которую жалуется gcc, заключается в том, что существует unknown type name ‘dint’
,
Там нет базового типа dint
в С ++, поэтому он должен быть объявлен где-то.
В той версии кода, которую вы копируете, возможно, typedef
или файл заголовка, который у вас нет includ
редактор
С небольшого взгляда я не вижу никакой ссылки на dint
в пинто, так что это, вероятно, определено где-то в исходном файле.
Ищите строку вроде:
typdef int dint;
Других решений пока нет …