Skip to content

Instantly share code, notes, and snippets.

View fabianosalles's full-sized avatar

Fabiano Salles fabianosalles

View GitHub Profile
@fabianosalles
fabianosalles / hello.asm
Last active June 16, 2020 03:50
Hello word in assembly for FASM assembler
; Hello world 16 bit program
; https://programmingdrops.com
format binary ; flat binary file format
use16 ; 16bit file
org 0x0100 ; all COM files adresses must be relative to 0x100 memory offset
vars:
message db 'Hello world!'
#include <stdio.h>
#include <stdlib.h>
#include <stdlib.h>
#include <ctype.h>
#include <locale.h>
int main()
{
/* use o set locale para aceitar acentos e caracteres espeiciais da língua portuguesa*/
#include <locale.h>
#include <stdlib.h>
#include "tarefas.h"
#include "list.h"
int main(void) {
//para suporte a acentos e caracteres especiais
setlocale(LC_ALL, "pt");
//criamos uma pessoa
/*** API de Tarefas ***/
Tarefa *tarefa_create(char *descricao, bool pendente) {
Tarefa *result = calloc(1, sizeof(Tarefa));
memcpy(result->descicao, descricao, strlen(descricao));
result->pendente = pendente;
return result;
}
/*** API de Telefones ***/
Telefone *telefone(char tipo, char *ddd, char *numero) {
@fabianosalles
fabianosalles / tarefas-01.c
Last active November 27, 2019 21:39
estrutura de dados para armazenar tarefas e telefones
#include <time.h>
#include <stdbool.h>
typedef struct {
char descicao[255];
bool pendente;
} Tarefa;
#define TEL_FIXO 0x00
#define TEL_CELULAR 0x01
typedef struct {
/* Nó genérico, veja que o campo data
* é um ponteiro sem tipo, ou seja,
* pode apontar para qualquer coisa */
typedef struct _node {
void *data;
struct _node *next;
} Node;
typedef struct {
int count;
typedef struct _node {
void *data;
struct _node *next;
} Node;
typedef struct {
int count;
int data_size;
Node *head;
Node *tail;
typedef struct _node {
void *data;
struct _node *next;
} Node;
typedef struct {
int count;
Node *head;
} List;
@fabianosalles
fabianosalles / tarefas-02.c
Created November 27, 2019 18:13
Lista de tarefas e telefones para uma pessoa
typedef struct _node_tarefa{
struct _node_tarefa *next;
Tarefa data;
} NodeTarefa;
typedef struct {
NodeTarefa *head;
} Tarefas;
typedef struct _node_telefone{
@fabianosalles
fabianosalles / lista-encadeada-simples.c
Last active November 27, 2019 16:57
declaração de estruturas repetidas (non generics)
/* declaração de um nó de uma lista de inteiros. */
typedef struct _node {
int data;
struct _node *next;
} Node;
/* declaração de um nó para uma lista de string */
typedef struct _node {
char *data;
struct _node *next;