-
Conteúdo Similar
-
Por biza
Ola
Estou a construir um datalogger em código C.Desta forma necessito passar os dados entre ficheiros. O meu problema está na inclusão de algumas variáveis no topo de um arquivo .txt onde os dados são salvos. Variáveis como tempo de data e hora, id do dispositivo e muito mais... Para isso preciso de ajuda, gostaria que os dados estivessem disponíveis para todos os arquivos, até aí é fácil, basta incluir a variável como extern, no arquivos *.h e incluí-lo em todos os outros que você deseja que a variável esteja disponível. mas como posso fazer para ter acesso a ele dentro do array que preciso?
Exemplo: main.c
#include "main.h" char dateTimeFormat[24]; void main(void){ dateTimeFormat = "22-02-22 13:23:04"; } main.h
extern char dateTimeFormat[24];
teste.c
#include "main.h" extern char dateTimeFormat[24]; /*Header .txt file initialization*/ volatile char headerFile[] ="\n\n" "# HEALT MONITORING SYSTEM \r\n" "# DEVELOPED: BIZA \r\n" "# VERSION: B \r\n" "# DATATIMECAPTURE:"+dateTimeFormat+ "\r\n" "# SAMPLINGFREQUENCY: 500 \r\n" "# SAMPLECHANNELS: 1 2 3 4 5 6 7 8 \r\n" "# SAMPLINGRESULUTION: 24 \r\n" "# IDDEVICE: HEALTHY \r\n" "# ENDOFHEADER
Como posso incluir a variável "dateTimeFormat" dentro do headerFile como descrevi acima?
-
Por alexdyna
Prezados,
Amigos tenho que fazer um trabalho da faculdade onde o professor me da um arquivo que vou colocar anexo e tenho que fazer um algoritmo que leia o arquivo e monte uma tabela com as informações.
pelo que vejo ele tem na primeira linha 8 barra e nas demais linha 10 barras
ate a ultima que seria sua parada onde temos 2 barras seguidas.
ficaria muito grato com a ajuda de todos.
No arquivo anexo esta o texto:
Nome/telefone/nascimento/Horas Curso/vendas T1/vendas T2/vendas T3/vendas T4/
Luiz Ranza Neo/99934-5255/05/12/1989/200/107099,072578621/76915,8996218681/100922,271239691/76372,9971916498/
Richard de Barrissaia/99326-4689/18/03/1990/150/55123,0080621828/68062,2200055909/67233,9928593779/45236,5928531083/
Rodrigo Abalâminos/99911-7413/09/08/1987/168/71697,3866071191/58063,5644108225/88183,6230762134/48160,3116315664/
José Gigfrid/99658-7874/15/04/1997/135/48816,199086596/50086,3689415844/52916,3066872779/55232,0663463164/
Luiza Celly Silva/99659-1214/01/02/2000/90/29208,8223591438/39361,8088384592/45062,056112236/38913,7237126574/
Maria Kunlun/99686-7845/21/04/1984/182/92076,1053757689/80440,5339844205/87575,0546657182/79220,9398178354/
//
-
Por thiago_tw
eu to com uma tarefa que preciso de ajuda, já tentei alguns algoritmos que achei por aqui mas nunca dá certo, mandei a imagem do que é para ser feito, agradecido se me ajudarem
-
Por oromotoceu
#include <stdio.h>
#include <stdlib.h>
#define MAXTAM 1000
int Frente, Tras, Lista[MAXTAM];
void Lista_Construtor(){
Frente=0;
Tras=-1;
}
int Lista_Vazia(){
if(Tras==-1)
return 1;
else
return 0;
}
int Lista_Cheia(){
if(Tras==MAXTAM-1)
return 1;
else
return 0;
}
int Lista_Tamanho(){
return Tras+1;
}
int Lista_Inserir_Inicio(int Valor){
if(Lista_Cheia()){
return 0;
}else{
/*se quero inserir na posição 0,
vou deslocar todos os elementos para frente*/
for(int i=Tras+1;i>Frente;i--){
Lista=Lista[i-1];
}
Lista[Frente]=Valor;
Tras++;
return 1;
}
}
int Lista_Inserir_Fim(int Valor){
if(Lista_Cheia()){
return 0;
}else{
Tras++;
Lista[Tras]=Valor;
return 1;
}
}
int Lista_Inserir(int Valor, int Posicao){
if(Lista_Cheia()){
return 0;
}else{
/* Para verificar se a posição
está no meio da lista */
if(Posicao>Frente && Posicao<Tras){
for(int i=Tras+1;i>Posicao;i--){
Lista=Lista[i-1];
}
Lista[Posicao]=Valor;
Tras++;
return 1;
}else{
return 0;
}
}
}
int Lista_Remover_Inicio(int *Valor){
if(Lista_Vazia()){
return 0;
}else{
*Valor =Lista[Frente];
for(int i=Frente;i<Tras;i++){
Lista=Lista[i+1];
}
Tras--;
}
}
int Lista_Remover_Fim(int *Valor){
if(Lista_Vazia()){
return 0;
}else{
*Valor=Lista[Tras];
Tras--;
return 1;
}
}
int Lista_Remover(int *Valor, int Posicao){
if(Lista_Vazia()){
return 0;
}else{
if(Posicao>Frente && Posicao<Tras){
*Valor=Lista[Posicao];
for(int i=Posicao;i<Tras;i++){
Lista=Lista[i+1];
}
Tras--;
return 1;
}
}
}
int Lista_Get_toda(int *Valor){
if(Lista_Vazia()){
return 0;
}else{
*Valor=Lista[Frente];
return 1;
}
}
int Lista_Get_inicio(int *Valor){
if(Lista_Vazia()){
return 0;
}else{
*Valor=Lista[Frente];
return 1;
}
}
int Lista_Get_Fim(int *Valor){
if(Lista_Vazia()){
return 0;
}else{
*Valor=Lista[Tras];
return 1;
}
}
int Lista_Busca_Valor(int Valor, int *Posicao){
int i;
if(Lista_Vazia()){
return 0;
}else{
for(i=Frente;i<Tras;i++){
if(Lista==Valor){
break;
}
}
if(i==Tras){
return 0;
}else{
*Posicao=i;
return 1;
}
}
}
int Lista_Busca_Posicao(int *Valor, int Posicao){
if(Lista_Vazia()){
return 0;
}else{
if(Posicao>Frente && Posicao<Tras){
*Valor=Lista[Posicao];
return 1;
}else{
return 0;
}
}
}
int main(){
int i,Valor,op=0,pos;
Lista_Construtor();
while(op!=12){
printf("*** Menu de opções ***\n");
printf("1-Inserir início\n");
printf("2-Inserir fim\n");
printf("3-Inserir meio\n");
printf("4-Excluir início\n");
printf("5-Excluir fim\n");
printf("6-Excluir meio\n");
printf("7-Mostrar toda lista\n");
printf("8-Mostrar primeiro item da lista\n");
printf("9-Mostrar último item da lista\n");
printf("10-Mostrar a posição de um item da lista\n");
printf("11-Mostrar o valor de uma posição\n");
printf("12-Sair\n");
printf("Escolha uma opção: ");
scanf("%d", &op);
switch(op){
case 1:
printf("Digite o valor a ser inserido: ");
scanf("%d", &Valor);
Lista_Inserir_Inicio(Valor);
break;
case 2:
printf("Digite o valor a ser inserido: ");
scanf("%d", &Valor);
Lista_Inserir_fim(Valor);
break;
case 3:
printf("Digite o valor a ser inserido: ");
scanf("%d", &Valor);
printf("Digite a posição que deseja inserir: ");
scanf("%d", &pos);
Lista_ Inserir_meio(int Valor, pos);
break;
case 4:
printf("Digite a remoção do início: ");
scanf("%d", &*Valor);
Lista_ Excluir_inicio(*Valor);
break;
case 5:
printf("Digite a remoção do fim: ");
scanf("%d", &*Valor);
Lista_ Excluir_fim(*Valor);
break;
case 6:
printf("Digite a remoção do meio: ");
scanf("%d", &Valor);
printf("Digite a posição que deseja remover: ");
scanf("%d", &*Posicao);
Lista_ Excluir_meio(intValor, * pos);
break;
case 7:
printf("Digite ao a mostrar toda lista: ");
scanf("%d", &Valor);
Lista_ mostrar_toda_lista(Valor);
break;
case 8:
printf("Digite ao a mostrar primeiro item da lista: ");
scanf("%d", &*Valor);
Lista_ mostrar_primeiro_item_da_lista(*Valor);
break;
case 9:
printf("Digite ao a mostrar último item da lista: ");
scanf("%d", &*Valor);
Lista_ mostrar_ultimo_item_da_lista(*Valor);
break;
case 10:
printf("Digite ao a mostrar a posição de um item da lista: ");
scanf("%d", &Valor);
printf("Digite a posição que deseja mostrar na lista: ");
scanf("%d", &* pos);
Lista_ mostrar_posicao_de_um_item_da_lista(intValor, *pos);
break;
case 11:
printf("Digite ao a mostrar o valor de uma posição: ");
scanf("%d", &*Valor
printf("Digite a posição que deseja mostrar no valor: ");
scanf("%d", &pos);
Lista_ mostrar_posicao_de_um_valor_da_lista(int*Valor, pos);
break;
case 12:
default:
printf("Valor Invalido!\n");
system("PAUSE");
}
}
return 0;
}
-
Por oromotoceu
bom dia pode me ajudar nessa questão por favor
O programa deverá trabalhar dados de um veículo, onde será armazenado, Nome do proprietário, placa do carro, modelo do carro e preço do carro.
O programa deve ter as seguintes opções:
Inserir dados (todos os dados sugeridos no enunciado acima).
Excluir um Carro específico com a busca pela placa.
Editar dados de um Carro com a busca pela placa.
Consultar carro por Placa.
Exibir todos os dados cadastrados.
Finalizar programa.
A opção exibir todos os dados, apresenta tudo que já foi cadastrado e está na memória.
-
Preciso muito dessa ajuda.
Crie o algoritmo que a partir de um vetor com um número indeterminado de números pares obtenha três outros vetores a partir do vetor inicial: números pares, números impares e números primos (o algoritmo terá de contemplar as três funções distintas).
*recolha do vetor através da leitura de uma string contendo os valores separados por “,”
*display no ecrã dos 3 vetores resultantes na forma de lista separado por “,” na seguinte ordem: números pres, ímpares e primos. Considere a hipótese de um ou mais vetores estarem vazios, indicando tal no display.
*pausa no final para se verem os resultados (ReadKey)
Compartilhar este post
Link para o post
Compartilhar em outros sites