Jump to content
Fórum Script Brasil

GABRIEL_LOGAN

Membros
  • Posts

    22
  • Joined

  • Last visited

About GABRIEL_LOGAN

  • Birthday 10/07/1988

Contatos

Perfil

  • Location
    Brasilia
  • Interests
    Eu sou alucinado, maluco, tarado, doido, afcionado por Visual Basic

GABRIEL_LOGAN's Achievements

0

Reputation

  1. Ai um codigo em C++ da epoca que eu comecei a mecher no windows.h: #include <windows.h> #define CLASS_NAME "Desenv. Teste" //============================================================ LRESULT WINAPI MsgProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) { switch(msg) { case WM_DESTROY: //Cleanup(); PostQuitMessage(0); return 0; } return DefWindowProc(hWnd, msg, wParam, lParam); } //============================================================ INT WINAPI WinMain(HINSTANCE hInst, HINSTANCE, LPSTR, INT nFunsterStil) { MSG messages; /* Here messages to the application are saved */ WNDCLASSEX wc = { sizeof(WNDCLASSEX), CS_CLASSDC, MsgProc, 0, 0, GetModuleHandle(NULL), NULL, LoadCursor (NULL, IDC_ARROW), (HBRUSH) COLOR_BACKGROUND, NULL, CLASS_NAME, NULL}; if (!RegisterClassEx (&wc)) return 0; HWND hWnd = CreateWindow( CLASS_NAME, "Desenv. Teste", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, 640, 480, GetDesktopWindow(), NULL, wc.hInstance, NULL); ShowWindow (hWnd, nFunsterStil); while (GetMessage (&messages, NULL, 0, 0)) { /* Translate virtual-key messages into character messages */ TranslateMessage(&messages); /* Send message to WindowProcedure */ DispatchMessage(&messages); } return messages.wParam; } //============================================================
  2. Cara, Fiz algo semelhante ao que você quer (Ele lê e grava na memória [opção=0] e imprime [opção=1] e sai [opção<>0 ou 1]) Pra ficar igual ao que você quer basta fazer uma comparaçãozinha na raça de cada animal (lembrando que comparação de strings você usa comparação caracter por caracter e não == , existe uma biblioteca que faz isso facinho ). Tentei usar um pouco de ponteiros e alocação de memória pra te forçar a se virar e entender pra poder modificar o programa que já está quase do jeito que você quer pro jeito que você quer. #include <stdio.h> #include <stdlib.h> #define MAX 15 //================================== struct animal{ int cor; char *raca; int idade; }; struct animais{ struct animal *todos_animais; int qtd_animais; }; //================================== int main(int argc, char *argv[]) { struct animais bixos; int i=0; int ret=3; int k; bixos.qtd_animais=0; (bixos.todos_animais)=(struct animal *)realloc((bixos.todos_animais),(bixos.qtd_animais)*sizeof(struct animal)); while(i!=-1) { printf("==========================================================\n"); printf("Digite 0 para catalogar 1 para imprimir e ? para sair...\n"); printf("==========================================================\n\n"); printf("Opcao: "); scanf("%d",&ret); if(ret==0) { i++; bixos.qtd_animais=i; (bixos.todos_animais)=(struct animal *)realloc((bixos.todos_animais),(bixos.qtd_animais)*sizeof(struct animal)); printf("-------------------------------------------\n"); printf("Digite a cor: (inteiro) "); scanf("%d",&(((bixos.todos_animais)+((i-1)*sizeof(struct animal*)))->cor)); printf("Digite a idade: (inteiro) "); scanf("%d",&(((bixos.todos_animais)+((i-1)*sizeof(struct animal*)))->idade)); printf("Digite a raca: (string MAX 15 char) "); (((bixos.todos_animais)+((i-1)*sizeof(struct animal*)))->raca)=(char*)malloc(MAX*sizeof(char)); scanf("%s",(((bixos.todos_animais)+((i-1)*sizeof(struct animal*)))->raca)); printf("-------------------------------------------\n\n"); } else if(ret==1) { if(bixos.qtd_animais==0) printf("Nenhum animal...\n"); else if(bixos.qtd_animais>0) for(k=0;k<bixos.qtd_animais;k++) { printf("\n\tAnimal[%d]\n",k); printf(">> cor: %d\n",(((bixos.todos_animais)+(k*sizeof(struct animal*)))->cor)); printf(">> idade: %d\n",(((bixos.todos_animais)+(k*sizeof(struct animal*)))->idade)); printf(">> raca: %s\n\n",(((bixos.todos_animais)+(k*sizeof(struct animal*)))->raca)); } } else i=-1; } system("PAUSE"); return 0; } falou
  3. Cara, Pensei aqui numa solução, mas nem testei não. Vê ai se dá certo: while(!arq1.txt.eof()) { arq1.get(ch); if(!arq1.txt.eof()) arqSaida.write((char *)&ch, sizeof(ch)); } Acho que se colocasse um Do While ficaria mais otimizado. Com menos comparações.
  4. Eu estou querendo fazer uma consulta num XML do WebService... Agora descobri que existe um tal de axis2/c que é um servidor que dá suporte a essas consultas em C: https://saloon.inf.ufrgs.br/twiki/view/Disc...atorio2008-2-05 Tem que pegar as DLL´s e colocar no system32... Ai depois eu rodei um arquivo fonte de exemplo: http://ws.apache.org/axis2/c/docs/hello/client/hello.c.html E vejam: gcc.exe "C:\axis2c\bin\test.c" -o "C:\axis2c\bin\test.exe" -I"C:\Dev-Cpp\include" -I"C:\axis2c\include" -L"C:\Dev-Cpp\lib" -L"C:\axis2c\lib" In file included from C:/Dev-Cpp/include/io.h:21, from C:/Dev-Cpp/include/direct.h:22, from C:/axis2c/include/platforms/windows/axutil_windows.h:48, from C:/axis2c/include/platforms/axutil_platform_auto_sense.h:38, from C:/axis2c/include/axutil_dll_desc.h:31, from C:/axis2c/include/axutil_class_loader.h:31, from C:/axis2c/include/axis2_util.h:24, from C:\axis2c\bin\test.c:19: C:/Dev-Cpp/include/stdint.h:27: error: conflicting types for 'int8_t' C:/axis2c/include/axutil_utils_defines.h:38: error: previous declaration of 'int8_t' was here C:/Dev-Cpp/include/stdint.h:28: error: redefinition of typedef 'uint8_t' C:/axis2c/include/axutil_utils_defines.h:37: error: previous declaration of 'uint8_t' was here C:/Dev-Cpp/include/stdint.h:29: error: redefinition of typedef 'int16_t' C:/axis2c/include/axutil_utils_defines.h:40: error: previous declaration of 'int16_t' was here C:/Dev-Cpp/include/stdint.h:30: error: redefinition of typedef 'uint16_t' C:/axis2c/include/axutil_utils_defines.h:39: error: previous declaration of 'uint16_t' was here C:/Dev-Cpp/include/stdint.h:31: error: conflicting types for 'int32_t' C:/axis2c/include/axutil_utils_defines.h:42: error: previous declaration of 'int32_t' was here C:/Dev-Cpp/include/stdint.h:32: error: conflicting types for 'uint32_t' C:/axis2c/include/axutil_utils_defines.h:41: error: previous declaration of 'uint32_t' was here C:/Dev-Cpp/include/stdint.h:33: error: redefinition of typedef 'int64_t' C:/axis2c/include/axutil_utils_defines.h:44: error: previous declaration of 'int64_t' was here C:/Dev-Cpp/include/stdint.h:34: error: redefinition of typedef 'uint64_t' C:/axis2c/include/axutil_utils_defines.h:43: error: previous declaration of 'uint64_t' was here
  5. (SEM ACENTO) Galera, Tem alguma biblioteca em C que me ajude a baixar um arquivo pela internet em C? Se alguém souber de algum material tambem eu agradeco :-)
  6. GABRIEL_LOGAN

    libxml2

    Galera, Achei um exemplo de como ler aquivos xml, rodou perfeitamente (no Linux), fiz a leitura de uns arquivos aqui no meu HD e tal, enfim funcionou certinho... Vejam o codigo abaixo, bem simples ele. //------------ //COPILED: gcc `xml2-config --cflags --libs` -o reader1 reader1.c //------------ /** * section: xmlReader * synopsis: Parse an XML file with an xmlReader * purpose: Demonstrate the use of xmlReaderForFile() to parse an XML file * and dump the informations about the nodes found in the process. * (Note that the XMLReader functions require libxml2 version later * than 2.6.) * usage: reader1 <filename> * test: reader1 test2.xml > reader1.tmp; diff reader1.tmp reader1.res; rm reader1.tmp * author: Daniel Veillard * copy: see Copyright for the status of this software. */ #include <stdio.h> #include <libxml/xmlreader.h> #ifdef LIBXML_READER_ENABLED /** * processNode: * @reader: the xmlReader * * Dump information about the current node */ static void processNode(xmlTextReaderPtr reader) { const xmlChar *name, *value; name = xmlTextReaderConstName(reader); if (name == NULL) name = BAD_CAST "--"; value = xmlTextReaderConstValue(reader); printf("%d %d %s %d %d", xmlTextReaderDepth(reader), xmlTextReaderNodeType(reader), name, xmlTextReaderIsEmptyElement(reader), xmlTextReaderHasValue(reader)); if (value == NULL) printf("\n"); else { if (xmlStrlen(value) > 40) printf(" %.40s...\n", value); else printf(" %s\n", value); } } /** * streamFile: * @filename: the file name to parse * * Parse and print information about an XML file. */ static void streamFile(const char *filename) { xmlTextReaderPtr reader; int ret; reader = xmlReaderForFile(filename, NULL, 0); if (reader != NULL) { ret = xmlTextReaderRead(reader); while (ret == 1) { processNode(reader); ret = xmlTextReaderRead(reader); } xmlFreeTextReader(reader); if (ret != 0) { fprintf(stderr, "%s : failed to parse\n", filename); } } else { fprintf(stderr, "Unable to open %s\n", filename); } } int main(int argc, char **argv) { if (argc != 2) return(1); /* * this initialize the library and check potential ABI mismatches * between the version it was compiled for and the actual shared * library used. */ LIBXML_TEST_VERSION streamFile(argv[1]); /* * Cleanup function for the XML library. */ xmlCleanupParser(); /* * this is to debug memory for regression tests */ xmlMemoryDump(); return(0); } #else int main(void) { fprintf(stderr, "XInclude support not compiled in\n"); exit(1); } #endif Agora tentei abrir um arquivo xml da internet mas não deu certo, vejam: cd '/home/logan/ex3' [email protected]:~$ cd '/home/logan/ex3' [email protected]:~/ex3$ '/home/logan/ex3/reader1' 'http://www.ovh.pt/produtos/dotie.xml' error : Operation in progress Unable to open http://www.ovh.pt/produtos/dotie.xml [email protected]:~/ex3$ alguém PODERIA ME AJUDAR? COMO FACO PRA ACESSAR UM XML PELA INTERNET? OBRIGADO GABRIEL
  7. GABRIEL_LOGAN

    Menus em C

    (SEM ACENTO) :blink: cara você ta querendo tudo nas maos... Se o professor passou um trabalho valendo 80% da nota, então ele deve ter ensinado pelomenos o basico ( e você me diz que esta' a 2 dias quebrando a cabeca pra fazer o menu...) Um while com scanf's e printf's... Imagina a hora que você tiver que acessar o arquivo (Ler/Escrever). Lhe aconselho :huh: seriamente comecar a estudar mais. Para tanto, veja ai uma boa apostila de C: ftp://ftp.unicamp.br/pub/apoio/treinamentos/linguagens/c.pdf
  8. Meio dificil fazer qualquer análise só com esse for ai....
  9. você deve estar chamando o #include "pegadados.h" Em vários arquivos, por isso deve estar dando esse monte de "multiple definition" Tente colocar tudo o que deve ser definido apenas uma vez no seu arquivo pegadados.h dentro do ifndef, assim: #ifndef _PEGADADOS_H_ #define _PEGADADOS_H_ typedef struct stHd { int iCpu_Key; char szHd_Size[12]; struct stHd *pstHd_Next; }t_stHd; void func1(a, b, c, ..., z); void func2(a, b, c, ..., z); void func3(a, b, c, ..., z); . . . #endif
  10. Uê, pelo que entendi, você quer pegar um texto SQL (supondo estar em um arquivo) e onde tiver ")" adicionar", '0'" antes dele. não é??!?! Velho, no Visual Basic você faz isso em menos de 2 minutos com um RichTextBox utilizando o método Replace... Em C vai ser mais chato um pouco... Mas vamos lá. #include <stdlib.h> #include <stdio.h> int main(int argc, char *argv[]) { FILE *fp_r; FILE *fp_w; char ch; if((fp_r=fopen("C:\\pastaX\\test_IN.txt", "r"))==NULL) { printf("Err:. Open file IN\n"); return 1; } if((fp_w=fopen("C:\\pastaX\\test_OUT.txt", "w"))==NULL) { printf("Err:. Open file OUT\n"); return 1; } do { //===COPIA DO ARQUIVO + o ", '0')" no arquivo ch=getc(fp_r); if(ch==')') { putc(',',fp_w); putc(' ',fp_w); putc(39,fp_w); // ASCII do ' putc('0',fp_w); putc(39,fp_w); // ASCII do ' putc(ch,fp_w); } else if(ch!=EOF) putc(ch,fp_w); }while(ch!=EOF); printf("\n"); fclose(fp_r); fclose(fp_w); system("PAUSE"); return 0; } Ele basicamente lê o arquivo test_IN.txt e escreve no arquivo test_OUT.txt mudando o ")" por ", '0')". Acho que deve solucionar seu problema. falou
  11. Galera, a placa de Rede não precisou instalar, o Linux reconheceu... Agora falta instalar o CD da Brturbo (Modem, e discador), mas parece que o Linux num executa o arquivo instalar.exe ......
  12. Galera nunca mechi em Linux, eu mechia em WINDOWS, agora estou migrando pro Pinguim...... Agora que estou com o Pinguim de Chapéu Vermelho eu tenho uma dúvida: Tenho uma placa de rede e um modem ADSL, como, onde faço pra instalar esses 2 hardwares? Tenho um CD do Discador BRTURBO, mas parece que ele so roda em WIN, alguém tem Brturbo, modem da U.S.Robotics e usa Linux? Pode me ajudar?
  13. KANDRAQUE, esse link dos discos de boot são do SUSE e estão quebrados, eu clico pra fazer download , mas não acha o download.
  14. kandrade valeu pela dica vou tentar fazer isso depois que acabar de baixar o Linux. E falando no código que você enviou, eu queria saber se eu poderia modificar "linux install=ftp://servidor_ftp/diretorio" para iniciar a instalação. por "linux install=c:\Pasta_Linux\" ? Ou seja ai ele instalaria em c:\Pasta_Linux\ Poso fazer isso? Meu amigo pegou a conversa de um chat e dise que poderia me ajudar, alguém sabe se isso funciona: Oi cara... olha é que eu estive tc com uns colegas da comunidade linux, no jabber e falei sobre o teu problema... O que eu apurei foi a dificudade dos kras entenderem como fazer, porque não majam muito de win, mas deram umas dica, peguei o log da conversa, estarei passando pra você ok. Desupe a pressa assim, mas veja se da para te ajudar em algo isso... rsrs [00:26] Mieli Jr.: ow vocês sabem se tem como instalar linux do hd? [00:26] Mieli Jr.: assim, você baixando os arquivos, e ao invez de queimar os cds dar um geito de instalar com os arquivos de instalacao no hd? [00:26] Forrest_Wise: xi Mieli, vai instalar de novo? [00:26] Mieli Jr.: Nem, pra um camarada ai... [00:27] [email protected]: sim, ate da [00:27] [email protected]: via dos não sei [00:27] [email protected]: mas via gnu/linux da sim [00:27] Mieli Jr.: mas o cara num tem linux instalado pow... [00:27] [email protected]: puts eu num manjo de win/dos... mas manda ele tentar assim: [00:27] [email protected]: ele pode usar outra maquina para rodar um server de nfs + boot [00:28] [email protected]: ou então... tem um tal de loading, ou algo assim dentro do iso do debian [00:28] [email protected]: só rodar ele (pelo dos)apontando para a imagem que ele quer instalar [00:26] debian_hurd: aff mieli seu loko, da um toke pra ele pegar um cd! bem mais facil [00:29] Mieli Jr.: no dos ne? [00:29] Mieli Jr.: roda esse loading e aponta a iso no hd? [00:29] [email protected]: não [00:29] [email protected]: aponta para a imagem de boot [00:29] [email protected]: ele tem de tirar os arquivos do iso [00:30] Mieli Jr.: ah ta! [00:29] Mieli Jr.: seria mais facil alan, mas o cara já baxo a distro e num tem gravadora [00:30] [email protected]: mas como eu disse... no win, eu nem tenho certeza como faz [00:30] Mieli Jr.: não bele! vo da um toke pro cara Funciona? valeu Galera!
  15. People, eu baixei o CD1 do Linux Mandrake (O CD1 referente ao instalável, não aquele que roda do CD) , baixei o CD1 no Windows, baixei o arquivo *.ISO* de 692 Mb e agora pra instalar? Eu não tenho como gravar um tudo num CD porque não tenho Gravadora. Teria como eu instalar direto do meu HD o Linux? alguém poderia me explicar? Fico Grato.
×
×
  • Create New...