Ir para conteúdo
Fórum Script Brasil

fbafelipe

Membros
  • Total de itens

    97
  • Registro em

  • Última visita

Tudo que fbafelipe postou

  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
  16. fbafelipe

    Microsoft X Linux

    não, não vai aparecer com codigo fechado, porque segunda a lisenca GPL um prog q tem codigo aberto não pode ter seu codigo fechado futuramente... o freesoftware é free de liberdade, o usuario pode modificar e redistribuir o programa sob os termos da licença, na propria licença diz q a questao é liberdade, e não preço, não a nada de errado eles cobrarem... e como é software livre, mesmo sendo cobrado, se você for comprar um cd pirata, não vai ser ilegal, afinal o cara q ta vendendo tem o direito de redistribuir, basta ele seguir a licença, o q implica em mandar os sources e uma copia da licença... duvido muito q o linux venha a se tornar como o ruwindows, se isso vier a acontecer, a comunidade pode pegar os sources e criar um novo projeto baseado no linux... mas duvido q isso seja necessario...
  17. fbafelipe

    Microsoft X Linux

    deem uma olhada nesse link: http://www.theinquirer.net/?article=18910 fica complicado acreditar em um dado fornecido pela microsoft... e quanto ao ruwindows, ele trava sim, é obvio q tem gente q exagera um pouco, mas ele trava bastante sim... quanto aos virus, isso depende muito, depende das paginas q você entra, se você tem anti-virus atualizado, etc... e mesmo com antivirus atualizado você sempre corre o risco de encontrar um virus novo, ou q o seu antivirus ainda não reconhece... e se você n tem antivirus, dai já era, vai lotar de virus... no linux, eu não tenho nenhum antivirus e nunca peguei nenhum virus... uso linux a pouco mais de 1 ano e meio e NUNCA travou... já no ruwindows, mesmo com antivirus atualizado sempre tem um ou outro q infecta o pc, e de vez enquanto da uma travada... e tipo, eu acho q o SO que tem q trazer seguranca, não o antivirus, pelo menos pra usuarios domesticos, não deveria ser necessario antivirus... a m$ deveria se empenhar mais em corrigir as falhas...
  18. mais dai vai listar no console, a intencao seria q o programa pudesse armazenar em strings pra possivelmente poder acessar os diretorios/arquivos...
  19. dae galera, como eu faco pra listar os arquivos (e subpastas) de uma pasta??? e como eu faco pra saber se a pasta existe? o metodo do fopen() funciona com dir? vlw
  20. dae galera, tem algum jeito melhor de verificar a existencia de um arquivo alem de usar o fopen pra leitura e ver se o ponteiro é null? vlw
  21. fbafelipe

    Windows Api

    o djgpp não tem o arquivo windows.h, entaum to usando o dev-cpp, como q eu faco pra passar o parametro -mwindows quando for compilar no dev-cpp??? e não teria como usar a api no djgpp? vlw
  22. em C eu prefiro usar fgets() porque evita o estouro de buffer...
  23. só uma coisa... na primeira solucao você tem q verificar se o usurio não esta digitando mais de 19 caracteres... se pode dar estouro de buffer... e mais uma solucao, só q sem precisar criar um novo array... char str[100]; int i = 0, espacos = 0; // le a string while (str[i]){ // OBS: não precisa por o != '\0' porque o '\0' já é zero if (str[i] == ' '){ espacos++; continue; } str[i - espacos] = str[i]; i++; } str[i - espacos] = str[i]; // copia o '/0'
  24. fbafelipe

    Windows Api

    dae galera, como eu faco pra usar uma funcao da API windows??? e o linux tem alguma API propria ou é só as LIBS q se instala? como se usa uma funcao de um arquivo so/dll?? vlw
  25. fbafelipe

    Executar Comando

    vlw! funcionou! só uma coisa, n teria como ao invez de por o resultado direto na tela pegar o resultado em uma string? vlw
×
×
  • Criar Novo...