Здравствуйте.
Для более приятного кода решил распределить переменные и функции по static структурам:
/*...*/
static struct{
/*...*/
struct{
pthread_t tvideo;
pthread_t tsound;
void *(fvideo)(void *);
void *(fsound)(void *);
} multithreading;
/*...*/
} sys;
/*...*/
int main(int argc, char *argv[]){
/*...*/
pthread_create(&sys.multithreading.tvideo, NULL, *sys.multithreading.fvideo, NULL);
/*...*/
}
/*...*/
Необходимо объявить функцию sys.multithreading.fvideo.
В данный момент пока объявил функцию вне структуры:
/*...............*/
void *(fvideo)(void *arg){
/*...*/
}
/*...............*/
pthread_create(&sys.multithreading.tvideo, NULL, *fvideo, NULL);
/*...............*/
/*...*/
static struct{
/*...*/
struct{
pthread_t tvideo;
pthread_t tsound;
void *(fvideo)(void *arg){
/*...*/
};
/*...............*/
/*CPP: error: ‘sys’ was not declared in this scope */
/*...............*/
} sys;
void *(sys.multithreading.fvideo)(void *arg){
/*...*/
}
/*...............*/
/*CPP: error: expected ‘)’ before ‘.’ token*/
/*CPP: error: expected initializer before ‘.’ token*/
но не руководство или учебник, а ближе к справочнику и технической документации.