Perguntas com a tag [c]
C é uma linguagem de programação de computadores de propósito geral usado para sistemas operacionais, jogos e outros trabalhos de alta performance e é claramente distinto do C++. Foi desenvolvido em 1972 por Dennis Ritchie para uso com o sistema operacional UNIX. NÃO use esta tag se a pergunta for sobre C++ ou C# (apesar dos nomes serem parecidos, são linguagens diferentes)
4,940 perguntas
-4
votos
0
respostas
23
visitas
Inciando na programação [fechada]
Estou começando meus estudos em programação, mas tenho um conhecimento muito básico sobre a área.
Gostaria de saber com vocês algumas indicações de sites, cursos gratuitos e canais do YT para eu ...
-3
votos
1
resposta
105
visitas
Por alguma razão, quando coloco entradas no meu código em C que possuem acentuação o 'fgets' para de ler quando chega no acento
// FUNÇÃO PRINCIPAL
#include <stdio.h>
#include <windows.h>
#include <locale.h>
#include "functions.h"
#include "functions.c"
#define sucess 0;
int main()
{
...
0
votos
1
resposta
78
visitas
Agregação em C: membro de uma struct declarado como ponteiro para outro struct ou void pointer?
Para exemplificar, considere o código abaixo:
typedef struct dados_s
{
char *nome;
int idade;
} dados_t;
typedef struct node_s
{
dados_t *data;
struct node_s *next;
} node_t;
node_t *...
-3
votos
1
resposta
63
visitas
Meu EOF não funciona como esperado, alguém tem alguma sugestão de como ajeitar isso? [fechada]
Bom, estou tentando usar EOF em código e ele meio que buga, procurei o porque é pelo que parece é porque estou utilizando variáveis que excedem o valor de um LONG_MAX e queria saber como posso ...
-3
votos
0
respostas
20
visitas
Implementar uma função que dois conjuntos e sua relação, deve ser determinada se a relação é reflexiva, simétrica e transitiva [fechada]
#include<stdio.h>
#define max 25
#define tam_conj 5
void leitura_conjuntos(int conjunto[], int num_conjunto);
void leitura_relacao(int[][2], int *num_pares);
int verificacao_reflexiva(int v1[], ...
-3
votos
0
respostas
32
visitas
Blackjack em C - Meu jogo está fechando sozinho no trecho final do código [fechada]
Estou criando um jogo de Blackjack (21) porém ao chegar no trecho onde determina-se o vencedor do jogo o terminal onde o jogo está sendo executado é fechado.
Notei que isso ocorre apenas quando há ...
-4
votos
0
respostas
61
visitas
Erro de Compilação - Visual Studio Code [fechada]
Escrevi um codigo pra uma atividade, que necessita de verificar os numeros de 1 a 500, que se encaixam na tripla de pitagoras (A soma dos catetos quadrados deve ser igual a hipotenusa ao quadrado). ...
0
votos
1
resposta
61
visitas
Execução direta e por interpretação fazem o mesmo processo?
Eu estou lendo o livro Organização Estruturada de Computadores, de Tanenbaum, e em certo trecho ele diz:
Após a especificação da linguagem de
máquina, L, para um novo computador, a equipe de projeto ...
5
votos
1
resposta
173
visitas
Onde as Strings literais ficam armazenadas?
Considere o seguinte código em C:
#include <stdio.h>
int main(void)
{
printf("Hello, world!\n");
return 0;
}
Onde a String "Hello, world!\n" fica armazenada na ...
-4
votos
2
respostas
167
visitas
Utilizar Strings em uma estrutura personalizada em C (typedef struct)
Olá! estou tentando armazenar strings em uma estrutura de dados personalizada (typedef struct), estou utilizando uma biblioteca para trabalhar com strings em C, porem os dados não estão sendo ...
-3
votos
0
respostas
48
visitas
Ordenação de lista encadeada BubbleSort c [fechada]
Lista.h
#include <stdlib.h>
#include <stdio.h>
typedef struct lista Lista;
struct lista
{
int valor;
struct lista * proximo;
};
//Operação Criacao
Lista * ...
-2
votos
0
respostas
114
visitas
Ordem Crescente em C [fechada]
Poderiam me ajudar a resolver esse exercício?
Peça ao usuário para digitar dez valores numéricos e ordene por ordem crescente esses valores, guardando-os num vetor. Ordene o valor assim que ele for ...
-3
votos
0
respostas
186
visitas
Jogo de Batalha Naval em C [fechada]
Estou fazendo um jogo de batalha naval em C e gostaria de saber como posso fazer para os tiros dados pelo usuário aparecerem em uma matriz do mapa. Aqui está parte do código:
int batalha (char luta)
{
...
-3
votos
1
resposta
122
visitas
Pesquisa de valor exato ou aproximado em vetor desordenado em C
Estou tentando escrever um algoritmo em C que lê um valor inteiro N e um vetor de 10 posições. Que busque o valor dentro do vetor, se existir informar a posição, porém se não existir, encontrar o ...
-1
votos
1
resposta
87
visitas
Como posso implementar uma recursividade num método que implementou a iteratividade, tendo as mesmas entradas e o mesmo retorno? O código está em C
#include <stdio.h>
#include <stdlib.h>
int *concatenarDoisVetores(
int *vetor1, int vetor1Posicoes, int *vetor2, int vetor2Posicoes)
{
// uso da iteratividade:
int *vetor3;
...
8
votos
1
resposta
336
visitas
Como diferentes linguagens de programação se comunicam?
Uma dúvida que sempre tive e que me traz curiosidade é como diferentes linguagens de programação se comunicam entre si.
Não é tão raro ver diferentes projetos que usam linguagens diferentes em um ...
0
votos
2
respostas
205
visitas
Converter valor decimal para binário em C
Olá, tenho o seguinte exercício:
Faça um programa que leia números positivos e os converta em binário. Cada número binário deverá ser salvo em uma linha de um arquivo texto. O programa termina quando ...
0
votos
1
resposta
264
visitas
Arquivos - Linguagem C
Estou estudando C e acabei de chegar no conteúdo de arquivos, no qual estou tendo muita dificuldade. São diversas funções para o manejo dos arquivos e eu não sei exatamente se estou me saído bem ou ...
-4
votos
1
resposta
126
visitas
Método de Newton-raphson na linguagem em c
não estou conseguindo encontrar o erro nessa função
#include <stdio.h>
#include <math.h>
// Função que representa a equação
double funcao(double x) {
return x * x - 4; // Exemplo: x^2 ...
-1
votos
1
resposta
89
visitas
Como resolver o problema do printf no meu código? (Ele não imprime saída)
O objetivo do código é quebrar a cifra de Vigenère, usando o método de Kasiski para encontrar o comprimento da chave, análise de frequência para descobrir a chave. E acontece que não sei o porquê dele ...
0
votos
1
resposta
105
visitas
Alocação dinâmica, linguagem C
Estou fazendo alguns exercícios em C, e não estou achando onde ocorre o erro. Segue o enunciado: 6) Escreva um programa que aloque dinamicamente uma matriz de inteiros. As dimensões da matriz deverão ...
1
voto
1
resposta
459
visitas
Uso de "return 0" em funções void é realmente necessário? [duplicada]
Gostaria de entender se existe a obrigatoriedade do return 0 no final de uma função void.
Exemplo:
#include <stdio.h>
#include <stdlib.h>
void escrevaNaTela(); //Declarando a função
int ...
-1
votos
1
resposta
61
visitas
Como vejo os valores dos registradores no disassembly de um 'olá mundo'?
Eu sei que para ver o código assembly de um arquivo objeto gerado a partir de um código C, podemos utilizar o objdump da seguinte maneira
objdump -d arquivo.obj
No meu caso, dropa o seguinte código ...
-2
votos
1
resposta
78
visitas
Como construir um objeto filho usando o construtor do objeto pai?
Gostaria de saber se existe alguma forma de um objeto filho usar o construtor do objeto pai ao ser construído (sem a necessidade de criar um construtor explícito no objeto filho). Por exemplo:
#...
-1
votos
1
resposta
75
visitas
Quantas linhas uma função "inline" deve ter? em quais casos o "inline" será desconsiderado?
o C++ possuí uma palavra-chave chamada "inline" que serve para alterar a forma em como o compilador realizará a chamada de uma função. Estou ciente que é recomendado que o tamanho dessa ...
5
votos
1
resposta
129
visitas
Qual é a diferença entre "=" e ":=" no Make?
No contexto de atribuíção de variáveis no Make, existem dois operadores que parecem fazer a mesma coisa: = e :=. Existe alguma diferença entre eles?
-2
votos
1
resposta
85
visitas
último espaço de um vetor não está sendo lido em C
escrevi um código em C para contagem de vogais em um input e encontrei um jeito de resolver de certa forma o problema, mas gostaria de saber o pq isso resolveu e o pq do último espaço do vetor (vog[4])...
7
votos
1
resposta
184
visitas
Por que uma atribuição cujo valor usa o operador vírgula nem sempre resulta na expressão mais à direita?
Estou com uma dúvida sobre o operador vírgula em C.
No código abaixo, levando em conta alguns textos que li (1) e (2) e vendo a resposta postada aqui, eu esperava que o valor de c seria 20 (expressão ...
2
votos
1
resposta
204
visitas
É possível passar um array por valor no parâmetro em uma função?
Sabemos que passamos um array como um ponteiro no parâmetro de uma função, portanto não é o valor que é copiado, apenas o ponteiro para o local onde estão os dados. Mas e se eu quiser passar por valor ...
3
votos
2
respostas
131
visitas
Por que o endereçamento do malloc() é diferente da stack?
Porque no malloc() parece ser alocado 16 bits a mais, e na stack a alocação parece ser logicamente correta?
int main(){
#STACK
char str[2] = "A";
char str2[2] = "...
2
votos
1
resposta
128
visitas
O que significa arena?
Usando o termo no contexto de memória de uma aplicação, o que é, qual a função e importância de uma arena? Onde ela fica alocada? Pode usar só em C ou C++?
2
votos
1
resposta
102
visitas
O que acontece se usar "malloc(0)"?
Pode fazer isso em C? Tem alguma utilidade?
3
votos
1
resposta
174
visitas
É possível usar exceção em C?
Mesmo que não seja exatamente como um throw e catch, tem como fazer uso de algo parecido com a exceção em C?
2
votos
2
respostas
272
visitas
É mais rápido usar a função "Pow()" ou fazer multiplicações?
Se eu usar uma função pow() do C ou C++ será sempre mais lento que fazer a multiplicação do valor a quantidade de vezes do expoente?
0
votos
0
respostas
99
visitas
Fazer um programa em c para calcular o valor da raiz de uma função usando método da bisseção porém, variavel esta sempre igual a zero
olá estou querendo fazer um programa em c que calcule a raiz de uma função usando o método da bisseção, porém, a variável que era para ter valor atribuído por quem digitasse, está tendo o valor 0 ...
5
votos
2
respostas
262
visitas
Tem algum problema em usar scanf com ponteiro void?
Fiz uma função que chama scanf(), passando um ponteiro void no segundo argumento:
void read(const char *format, void *p) {
scanf(format, p);
}
Testando com diferentes tipos:
int n;
read("%d&...
12
votos
3
respostas
187
visitas
Faz diferença ordenar os ifs/else ifs pelo mais provável de acontecer?
Se eu fizer
if (muito provável)
//faz algo
else if (alguma probabilidade)
//faz algo
else if (bem pouco provável)
//faz algo
é melhor que colocar em qualquer outra ordem?
Sem olhar a ...
-4
votos
0
respostas
65
visitas
Problema ao chamar função tipo char [fechada]
#include <stdio.h>
#include <stdlib.h>
#include<conio.h>
char categoria(char tipo);
int main(int argc, char *argv[]) {
char str;
printf("Informe a categoria:");
scanf(&...
7
votos
1
resposta
197
visitas
Onde os dados são colocados na memória em C?
Considerando que a memória é dividida em quatro segmentos: dados, heap, pilha e código, onde as variáveis globais, variáveis estáticas, dados constantes, variáveis locais, ponteiros e o espaço alocado ...
-3
votos
1
resposta
82
visitas
Listas ligadas - Adicionar ao final da lista
Boas.
Estou com o seguinte problema, fiz um pequeno programa para testes, onde crio uma lista com os dados de um cliente, nome e número, mas estou com problemas em adicionar ao final da lista. Se ...
-2
votos
2
respostas
180
visitas
Acessar elementos de um array bidimensional através de aritmética de ponteiros
Estou aprendendo sobre aritmética de ponteiros e cheguei em uma parte onde é dito que arrays multidimensionais são armazenados contiguamente na memória, sendo assim possível acessar seus elementos ...
-1
votos
2
respostas
68
visitas
Conversão de string modificada para a original [fechada]
Eu me deparei com uma questão que pede para transformar um texto com caracteres "?" para a forma original, como por exemplo:
"C?m? mu?to b?m h?je" para "Comi muito bem hoje&...
-3
votos
1
resposta
118
visitas
Este programa não funciona. Porém se eu der o scanf da variável ch antes do scanf das variáveis x e y, ele funciona. Alguem saberia me explicar porque
#include <stdio.h>
#include <stdlib.h>
int main()
{
char ch;
int x, y;
printf("Digite o valor de x e y:");
scanf("%d %d", &x, &y);
...
1
voto
0
respostas
47
visitas
verificar e proteger uma thread em c++ [fechada]
Tenho uma duvida sobre thread já vasculhei tudo que pude sobre o assunto e nao encontrei a solução para meu problema!
atualmente criei uma thread simples para limpar memória:
BOOL APIENTRY DllMain(...
-2
votos
1
resposta
259
visitas
Exercício bubble sort em C usando matriz com nomes
Olá, pessoal. Estou realizando um exercício na linguagem C utilizando a estrutura de dados chamada bubble sort.
Basicamente, o exercício pede para eu ordernar essa quantidade de nomes em ordem ...
-1
votos
1
resposta
118
visitas
Como pré-definir valores em struct array em C
Tenho duvidas em como posso atribuir valores a um struct que esteja em array.
A minha ideia era a seguinte:
typedef struct venda {
int refVenda;
int idCliente;
int preco;
int ...
1
voto
1
resposta
691
visitas
Dúvida sobre a função strlen()?
Question)
Ler uma string de no máximo 50 caracteres e criar uma nova string com seu inverso,
isso é a ultima letra da primeira string será a primeira na nova string e assim sucessivamente.
Doubt)
Eu ...
0
votos
1
resposta
121
visitas
GCC quais os casos de uso de: -static-libgcc e -export-dynamic?
Trabalho com a linguagem C e uso o compilador GCC, em alguns tutoriais vi o uso de:
-static-libgcc
-export-dynamic
Mas não sei por quê e nem quando usá-los e para que servem?
-3
votos
2
respostas
143
visitas
Escrever um struct em um endereço/ponteiro
Eu aloco memória usando a função VirtualAlloc() e ela retorna um ponteiro ptrAlloc. Eu gostaria criar um objeto nesse endereço, algo parecido com isso:
void* ptrAlloc = VirtualAlloc(0, sizeof strTeste,...
-2
votos
1
resposta
80
visitas
Dúvidas sobre pilha dinâmica - C
(1)Criar um ponteiro do tipo NO dentro da struct NO não implica que dentro desse ponteiro haverá outro ponteiro do tipo NO que terá outro e assim por diante?
typedef struct NO{
int dado;
...