Ir para conteúdo
Fórum Script Brasil

fbafelipe

Membros
  • Total de itens

    97
  • Registro em

  • Última visita

Sobre fbafelipe

fbafelipe's Achievements

0

Reputação

  1. fbafelipe

    Erro De Compilação

    Obrigado pela ajuda. Caso alguém tenha o mesmo problema, esse é o código funcionando: #include <iostream> class A{ public: virtual ~A(){} inline void foo() const{ std::cout << "Foo\n"; } }; class B : public A{ public: void foo(int x){} using A::foo; }; int main(int argc, char *argv[]){ B b; b.foo(); } Para evitar que o método seja escondido basta adicionar using A::foo; Obrigado
  2. Ao tentar compilar este código: #include <iostream> class A{ public: virtual ~A(){} inline void foo() const{ std::cout << "Foo\n"; } }; class B : public A{ public: void foo(int x){} }; int main(int argc, char *argv[]){ B b; b.foo(); } O g++ retorna o seguinte erro: teste.cpp: In function ‘int main(int, char**)’: teste.cpp:19: erro: no matching function for call to ‘B::foo()’ teste.cpp:14: nota: candidates are: void B::foo(int) alguém sabe o porque deste erro? Obrigado
  3. fbafelipe

    Processos

    Oi, eu estou usando o dev-cpp, e quando eu vou compilar o codigo, da um "link error" na funcao EnumProcesses() da windows api, eu acho que tenho que incluir alguma lib do dev-cpp, mas não seu qual... e como eu faco para ver o nome do processo (o nome que aparece quando da ctrl+alt+del)? Obrigado
  4. fbafelipe

    Como Saber

    na verdade, Java é meio interpretado e meio compilado em tempo de execusao... antes de comecar a executar o programa, o Java compila parte do codigo para codigo nativo, e o resto é interpretado... a vantagem de ser compilado em tempo de execusao é q é possivel otimizar ao maximo para a maquina que esta rodando, já que o binario não sera usado em outras maquinas... dessa forma o Java consegue um bom desempenho, proximo de C/C++
  5. fbafelipe

    Ld

    eu queria aprender a usar o linker pra poder gerar um unico programa atravez de varios arquivos .c, e tb pra poder misturar linguagens (não tenho certeza, mas acho q da pra fazer isso com o linker)... nesse caso ta com apenas um arquivo .c, mas seu eu tivesse dois arquivos .c (e não .h) e tivesse que juntalos em um só?
  6. fbafelipe

    Ld

    Oi, eu to tentando aprender a usar o ld, mas não ta funcionando... eu fiz esse codigo: #include <stdio.h> int main(){ printf("Hello World!\n"); return 0; } e olha o q acontece: eu coloquei o ls pra mostrar como o executavel esta sendo gerado, mas quando tento executar fala q ele não existe!!! alguém sabe onde ta o erro? obrigado
  7. fbafelipe

    Socket Urgente

    sockets em C no linux eu aprendi lendo as paginas do "man" do linux... é só digitar "man socket", que vai explicar o que a funcao socket faz (cria um socket), o que é cada argumento, o que retorna etc... e no final aparece "see also", e outras funcoes que são usadas com sockets...
  8. java é case-sensitive, letras mauisculas são diferentes de letras minusculas... se você tiver o arquivo Hello.java, você vai ter que compilar com "javac Hello.java", e pra rodar "java Hello" e você não precisa por o arquivo .java na pasta bin do jdk, basta você setar a variavel PATH para incluir a pasta bin do jdk...
  9. fbafelipe

    Duvida C++

    agora sim funcionou... mas o que eu to achando estranho, é que em outro prog (em C puro), eu tinha chamado sleep() e funcionou!
  10. fbafelipe

    Duvida C++

    oi, como que eu faco pra chamar uma funcao global de uma funcao de uma classe? ex: class X{ void z(){ } }; void y(){ } como que eu faria pra chamar a funcao y() pela funcao z()?? obrigado
  11. fbafelipe

    Sockets Facin Em C++

    testei no windows e tb funcionou!!! mais uma vez valeu a ajuda! OBS: no outro post eu tinha esquecido de logar antes de postar...
  12. fbafelipe

    Sockets Facin Em C++

    ta ai o codigo que to tentando compilar no linux: #include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #define MAX 10 #define BUFFER 1024 #define MSG "SUCESSO!\n" int main(){ struct sockaddr_in addr; int serverSocket, socket, length, i; char buffer[BUFFER]; serverSocket = socket(AF_INET, SOCK_STREAM, 0); if (serverSocket == -1){ printf("Ocorreu um erro ao abrir serverSocket!\n"); exit(1); } addr.sin_family = AF_INET; addr.sin_port = htons(12345); addr.sin_addr.s_addr = INADDR_ANY; memser(&(addr.sin_zero), '\0', 8); if (bind(serverSocket, (struct sockaddr *)&addr, sizeof(struct sockaddr_in)) == -1){ printf("Ocorreu um erro ao chamar bind()!\n"); exit(1); } if (listen(serverSocket, MAX) == -1){ printf("Ocorreu um erro ao chamar listen()!\n"); exit(1); } printf("Aguardando conexao...\n"); socket = accept(serverSocket, NULL, NULL); if (socket == -1){ printf("Ocorreu um erro ao chamar accept()!\n"); exit(1); } printf("Conectado!\n"); printf("Recebendo dados...\n"); length = recv(socket, (void *)buffer, BUFFER, MSG_WAITALL); printf("%d bytes foram recebidos:\n"); for (i = 0; i < BUFFER; i++) printf("%c", buffer[i]); printf("\n\n"); printf("Enviando resposta...\n"); sprintf(buffer, MSG); length = send(socket, buffer, strlen(buffer), MSG_OOB); printf("%d bytes foram enviados.\n", length); printf("Sucesso!"); close(socket); close(serverSocket); return 0; } e o erro: felipe@felipe:~/projetos/teste/C$ gcc teste.c -o teste teste.c: In function `main': teste.c:12: error: called object is not a function
  13. fbafelipe

    Sockets Facin Em C++

    o header winsock2.h já estava sendo incluido, eu tb adicionei a libws2_32.a, e iniciei o WSAData, e continua dando o mesmo erro... ai vai o codigo completo: #include <stdio.h> #include <windows.h> #include <winsock2.h> #include <wininet.h> #define BUFFER 1024 #define MSG "SUCESSO!" int main(){ SOCKET serverSocket, socket; char buffer[BUFFER]; struct sockaddr_in service; int lido, enviado, i; WSADATA wsaData; if (WSAStartup(MAKEWORD(1, 1), &wsaData) != 0){ printf("WSAStartup failed.\n"); exit(1); } serverSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); if (serverSocket == INVALID_SOCKET){ printf("Ocorreu um erro!\n"); getch(); exit(1); } service.sin_family = AF_INET; service.sin_addr.s_addr = inet_addr("127.0.0.1"); service.sin_port = htons(666); if (bind(serverSocket, (SOCKADDR*)&service, sizeof(service)) == SOCKET_ERROR){ printf("erro no bind()\n"); closesocket(serverSocket); getch(); exit(1); } if (listen(serverSocket, 1) == SOCKET_ERROR){ printf("Erro escutando socket\n"); closesocket(serverSocket); getch(); exit(1); } socket = accept(serverSocket, NULL, NULL); if (socket == INVALID_SOCKET){ printf("Erro no socket\n"); closesocket(socket); closesocket(serverSocket); getch(); exit(1); } lido = recv(socket, buffer, BUFFER, 0); if (lido == SOCKET_ERROR){ printf("Erro ao receber dados\n"); closesocket(socket); closesocket(serverSocket); getch(); exit(1); } printf("%d bytes recebidos\nData:\n", lido); for (i = 0; i < lido; i++) printf("%c", buffer[i]); printf("\n\n"); enviado = send(socket, MSG, strlen(MSG), 0); printf("Dados enviados com sucesso!\n"); closesocket(socket); closesocket(serverSocket); getch(); return 0; } eu tb to aprendendo sockets no linux, e ironicamente, to tento o mesmo problema, com a mesma funcao! depois eu posto aqui o codigo que to tentando compilar no linux...
  14. fbafelipe

    Sockets Facin Em C++

    tenta no site da msdn: msdn eu to (tentando) aprender a usar sockets no ruwindows, depois vou estudar os sockets no linux, valeu o link... mas tipo, eu dei uma olhada no msdn, tb to procurando um monte de coisa no google, já consegui escrever um codigo que deveria funcionar, mas essa linha se recusa a compilar: serverSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); da esse erro: "'socket' cannot be used as function" eu to usando o dev-cpp
  15. Oi, eu to usando a funcao fork() (do header unistd.h)... como que eu faco pra ter uma variavel que seja vista pelos dois processos? e porque nesse teste que fiz usando vfork(), não passa do "Thread NOVA: Aguardando pid...": #include <stdio.h> #include <unistd.h> int thread = 0; int main(){ int pid; printf("Iniciando teste...\n"); printf("THREAD = %d\n", thread); printf("Chamando vfork()\n"); pid = vfork(); if (pid){ thread = pid; printf("Thread MAIN: PID = %d\n", pid); printf("Thread MAIN: Chamando sleep(10)\n"); sleep(10); printf("Thread MAIN: sleep completo\n"); printf("Thread MAIN: THREAD = %d\n", thread); printf("Thread MAIN: finalizando...\n"); return 0; } else{ printf("Thread NOVA: Aguardando pid...\n"); while (!thread) sleep(1); printf("Thread %d: Chamando sleep(3)\n", thread); sleep(3); printf("Thread %d: finalizando...\n", thread); exit(0); } } vlw
×
×
  • Criar Novo...