Segue o codigo para a captura do video da camera no linux. #include <stdio.h>#include <opencv/cv.h>#include <opencv/highgui.h>int main(int argc, char **argv) { CvCapture *capture = 0; IplImage *frame = 0; int key = 0; /* initialize camera */ capture = cvCaptureFromCAM(0); /* always check */ if (!capture) { fprintf(stderr, "Cannot open initialize webcam!\n"); return 1; } /* create a window for the video */ cvNamedWindow("result", CV_WINDOW_AUTOSIZE); while (key != 'q') { /* get a frame */ frame = cvQueryFrame(capture); /* always check */ if (!frame) break; /* display current frame */ cvShowImage("result", frame); /* exit if user press 'q' */ key = cvWaitKey(1); } /* free memory */ cvDestroyWindow("result"); cvReleaseCapture(&capture); return 0;} Buscando meus trabalhos de faculdade achei esse codigo de um jogo de 21 feito em C.Para compilar use gcc -o jogo21 jogo21.c/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- *//* * main.c * Copyright (C) Tiago Alves de Oliveira e Walisson Maicon Silva 2008 * * main.c is free software. * * You may redistribute it and/or modify it under the terms of the * GNU General Public License, as published by the Free Software * Foundation; either version 2 of the License, or (at your option) * any later version. * * main.c is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with main.c. If not, write to: * The Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor * Boston, MA 02110-1301, USA. */#define LINUX 1// #define WINDOWS 1//use define Linux se estiver usando o Linux e Windows para Windows#ifdef LINUX#include #include #include #include #endif#ifdef WINDOWS#include #include #include #include #endif#define PUBLIC extern#define ALOCA_NODO() ( (Tmonte) malloc(sizeof(Tbaralho)) )#define LIBERA_NODO(p) ( free(p) )typedef struct _carta_ //estrutura do baralho que vai ter o naipe o,c,e,p e valor da carta de 1 a 13{ char naipe; int valor;} Tcarta;//cartatypedef struct _baralho_ //estrutura do baralho, que vai conter um tipo carta e o apontador para o proximo valor{ Tcarta x; struct _baralho_ *prox;} Tbaralho; //baralhotypedef Tbaralho *Tmonte; //definindo o monte do tipo baralho/*================* * Inicia Fila *================*/PUBLIC Tmonte criaFila (void){ //aloca uma nova celula Tmonte pcabeca = ALOCA_NODO(); //o valor desta celula recebe -1 para se diferenciar pcabeca->x.valor = -1; //ela aponta para ela mesma pcabeca->prox = pcabeca; //retornando esta celula para fazer ligacao com a variavel que pediu ela return pcabeca;}/*================* * cria Baralho *================*/PUBLIC void criaBaralho(Tmonte *monte){ //montando o baralho int i,j; for(i=1;i<14 i="i" p="p"> for(j=1;j<5 j="j" p="p"> Tmonte novo = ALOCA_NODO(); novo->prox = (*monte)->prox; (*monte)->prox = novo; if (j == 1) novo->x.naipe = 'o'; if (j == 2) novo->x.naipe = 'c'; if (j == 3) novo->x.naipe = 'e'; if (j == 4) novo->x.naipe = 'p'; novo->x.valor = i; (*monte)->prox=novo; }}/*===================* * Exibe o Baralho *===================*/PUBLIC void mostraBaralho(Tmonte *monte){ //exibe o baralho Tbaralho *aux; aux = (*monte)->prox; while (aux->x.valor != -1){ //comparacao