-
Total de itens
884 -
Registro em
-
Última visita
Tudo que vangodp postou
-
pois prove encapsular tudo dentro de uma struct 😉
-
sim claro! Use os parâmetros das funções para passar dados. Algo mais?
-
troque int idade = 30; por int idade;
-
e que está com duvida?
-
deixe uma mensagem lá no github na pagina do projeto, tal vez eles sejam capazes de lhe dar uma luz.
-
não sei te dizer mas possivelmente tenha que incluir essas DLL de alguma forma, certamente nelas estão as implementaçoes das tais funções pois no arquivo .h somente estão as declarações. Então faça-se a pergunta... Onde estão as implementações dessas funções??
-
você é um cara de muita sorte!!! O único lugar da internet que vai lhe resolver o problema é esse daqui: https://www.clubedohardware.com.br/forums/topic/1298286-problema-para-ler-uma-string-com-acento/?do=findComment&comment=7106397 O setlocale só serve para mostrar caracteres com acentos, não para ler. Para ler faça a leitura e preste muita atenção. boa sorte 😉
-
use getline para ler com espaços
-
mas qual o procedimento que você utiliza para montar o programa? você abre o main cpp sem mais e roda ele? você deveria criar um projeto e incluir os tais arquivos, de outra forma n rodaria. Note que no .h só está a definição da tal função e não a implementação, a implementação estaria em outro arquivo cpp.
-
ta dizendo que não encontra a tal função, deveria estar dentro do suposto arquivo PPPagSeguro.h. Está PPPagSeguro.h junto do seu main.cpp? que IDE/Compilador você usa?
-
precisa aprender a trabalhar com a biblioteca time.h
-
c As funções remove() e rename() não funcionam!
pergunta respondeu ao Eren Potter de vangodp em C, C++
Aqui você tem um exemplo de como usar remove: http://www.cplusplus.com/reference/cstdio/remove/ E aqui rename: http://www.cplusplus.com/reference/cstdio/rename/ -
Função trava o programa quando inicializada
pergunta respondeu ao Alexandre Kevin de vangodp em C, C++
seria possível disponibilizar o arquivo EstoqueAtualizado.txt? -
Não consigo imprimir, na função main, valores provenientes de um vetor criado em outra função
pergunta respondeu ao Edwar Saliba Jr. de vangodp em C, C++
aqui você tem um exemplo de de programa que retorna uma matriz dinamica //UNAM //AUTOR: Omar J. //Fecha: 23092010 //Descripcion: Programa que guarda una matriz de tamanio mxn, usando memoria dinamica #include<stdio.h> #include<stdlib.h> void getDatos ( int* rows, int* cols ); int** getMatrix ( int rows, int cols ); void fillMatrix ( int** matrix, int rows, int cols ); void printMatrix ( int** matrix, int rows, int cols ); void freeMemory ( int** matrix, int rows ); int main ( void ) { int rows = 0, cols = 0; int** matrix = NULL; getDatos ( &rows, &cols ); matrix = getMatrix ( rows, cols ); fillMatrix ( matrix, rows, cols ); printMatrix ( matrix, rows, cols ); freeMemory ( matrix, rows ); return 0; } void getDatos ( int* rows, int* cols ) { printf ( "Renglones=" ); scanf ( "%d", rows ); printf ( "Columnas=" ); scanf ( "%d", cols ); } int** getMatrix ( int rows, int cols ) { int i; int** matrix = NULL; matrix = ( int** ) malloc ( sizeof ( int* ) *rows ); for ( i = 0; i < rows; i++ ) { * ( matrix + i ) = ( int* ) malloc ( sizeof ( int ) * cols ); } return matrix; } void fillMatrix ( int** matrix, int rows, int cols ) { int i, j; for ( i = 0; i < rows; i++ ) { for ( j = 0; j < cols; j++ ) { * ( * ( matrix + i ) + j ) = i + j; } } } void printMatrix ( int** matrix, int rows, int cols ) { int i, j; for ( i = 0; i < rows; i++ ) { for ( j = 0; j < cols; j++ ) { printf ( "\t%d", * ( * ( matrix + i ) + j ) ); } printf ( "\n" ); } } void freeMemory ( int** matrix, int rows ) { int i; for ( i = 0; i < rows; i++ ) { free ( * ( matrix + i ) ); } free ( matrix ); } -
use o botão <> para por o código
-
Pesquise sobre Congruência de Zeller: https://es.wikipedia.org/wiki/Congruencia_de_Zeller#Algoritmo
-
struct de char? Não entendo? de um exemplo.
-
Se você for na calculadora do windows e fazer 5/9, no modo normal vai sair 0.55555.... como resultado: Mas isso é no modo padrão da calculadora. Porem si mudamos para o modo "Programador": Essa mesma expressão matemática da como resultado 0. Tá errado? Não! Isso é por causa do tipo de dado e as conversões de forma explicitas que acontecem na linguagem de programação. Quando eu divido 5/9 eu divido um valor que é 5, por outro que é um inteiro, que é o 9; então eu tenho algo dividido por um inteiro, e o valor sempre será um inteiro. Seria um disparate se eu dividir algo por um int e me desse como resultado um char não é?shueseh. Para arrumar esse problema e gerar o tal 0.555555... com decimais, preciso dizer para o compilador de forma IMPLÍCITA(tinha errado aqui sry) que quero fazer a divisão de algo por um numero real(float); e essa forma é indicando que se trata de um literal real() ou fazendo um casting desta forma: 5/9.0 Então algumas formas de faze-lo de forma correta são: #include<stdio.h> #include<stdlib.h> int main(){ float r = 5/9; printf("Erro de lógica: %f\n", r); //Incorreto. Por muito que você queira dividir 5 por 9(um valor por int) o resultado sempre será um int r = 5/9.0; printf("Correto: %f\n", r); //Correto. Estou dividindo algo por um valor real(mesmo ele sendo literal). O compilador toma o 9 como se fosse um double. //r = 5/9f; //Somente funciona em C++ //printf("Correto: %f\n", r); //Correto. Estou dividindo algo por um valor real(mesmo ele sendo literal). O compilador toma o 9f como se fosse um float pois indico de forma explicita r = 5/(float)9; //Indicamos de forma explicita para o compilador que o 9 se trata de um float e não de um int. É considerado boa pràtica de programação pois indicamos que se trata de um (float)9 e que temos o programa baixo controle todo o tempo. printf("Correto: %f\n", r); //Correto. O resultado de dividir algo por um float é sempre um float. O resultado deve ser guardado em outro float, si não pode perder a parte decimal si o resultado for guardado em um int por exemplo, pois acontecerá um cast implicito neste caso e isso foge ao controle do programador gerando resultados erroneos. int r2 = 5/(float)9; printf("Incorreto: %d\n", r2);// Como podemos ver, si guardamos um float em um int perdemos a parte decimal e ficamos com um zero(comentado no exemplo anterior). //curiosidade. //Si imprimimos r2 como um float el resultado aparentemente é correto porem isso se deve a que em memoria um float no meu sistema ocupa o mesmo que um int porem se nos detemos a olhar os resultados tem diferenças e isso pode gerar programas imprecisos. printf("Incorreto: %f\n", r2); //Incorreto!!! r2 é um int não um float return 0; } note que ao imprimir r2 como um float mesmo ele sendo um int pode parecer que gera resultados corretos, mas realmente isso é devido a que em alguns sistemas um float ocupa o mesmo que um int, então digamos que a nível de bits ambos tem a mesma quantidade de bits, e por isso da a impressão de funcionar correto mas não é assim se você guardou o resultado em um int deve imprimi-lo como um int. Meu conselho é que aprenda mais sobre castings(conversões de tipos), tanto implícita como explicitamente, e também sobre Literais. Meu conselho é que aprenda mais sobre castings(conversões de tipos), tanto implícita como explicitamente, e também sobre Literais.
-
Que programa? Não entendo.
-
use o botão <> para postar códigos. Se agradece.
-
Qual o problema deste código? Ele simplesmente crasha do nada.
pergunta respondeu ao Tallahassee de vangodp em C, C++
Use o botão <> para postar códigos. -
Não entendo muito sobre esses sistemas tão complexos, porem acredito que poderia ser criado uma espécie de "lançador"(Launcher), que se executaria aparte. Esse lançador se encarregaria de arrancar a aplicação, entre outras coisas, e esse suposto lançador se encarregaria também de bater a versão atual com a de um servidor, e em caso sejam diferentes, deveria levar a cabo todos os procedimentos necessários para atualizar todos os arquivos que sejam importantes. Assim funcionam alguns Jogos como League of legends. Entre outras utilidades poderia ser usado esse lançador para comprovar arquivos corruptos e muitas outras coisas. A aplicação não deveria poder ser arrancada diretamente, si não desde um lançador como comentei. É só uma ideia. >_<
-
Lixo no buffer. Procure limpar o buffer antes de ler chars ou strings Um conselho... esqueça todas as soluções que lhe oferecerem fflush + stdin. Um conselho... esqueça todas as soluções que lhe oferecerem fflush + stdin.
-
como impedir que o usuario digite letras ou caracteres especiais em um vetor tipo int
pergunta respondeu ao Bruno Henrique Peron de vangodp em C, C++
Usando o valor de retorno da função scanf. /* 3 A função scanf retorna o valor da macro EOF se ocorrer um falho de entrada antes que a primeira conversão(se houver) seja concluída. Caso contrário, a função scanf retorna o número de itens de entrada atribuído, que pode ser menor do que o previsto, ou mesmo nula, em caso de uma falha de correspondência de início. */ /* A função scanf devolve o número de dados de entrada designado, que podem ser inferiores a oferecida, mesmo nulo, no caso de um erro de alocação. Se ocorre um erro de entrada antes de qualquer conversão, a função scanf retorna o valor do EOF macro. */ #include <stdio.h> #include <stdlib.h> int main() { int n; int res = scanf ( "%d", &n ); if ( res == 0 ) printf ( "Encontrado falho\n" ); if ( ferror ( stdin ) ) perror ( "error" ); if ( feof ( stdin ) ) printf ( "end-of-file encontrado.\n" ); // Ctrl+Z en Windows printf ( "\n%d", n ); return 0; } se hipoteticamente falando, scanf precisar tomar 3 dados( scanf("%d%d%d", &a, &b, &c) ), scanf deveria retornar um 3(int), mas se tipo ler 2 variáveis e falhar na 3º(&c), scanf retornaria um 2, com isso você sabe que 2 leituras foram corretas, mas a terceira não. Caso falhem todas retorna 0. Caso tente entrar com um char onde seria um int, em um scanf que faria a leitura de uma única variável, cairia na mensagem, como no exemplo anterior. Porem essas condições podem ser alteradas para servir a outros propósitos. Procure se documentar sobre o valor de retorno do scanf