#include <stdio.h>
#include <stdlib.h>
// copia a origem para o destino, sem checagem de tamanho
void strcopy(char *d, char *s)
{
while (*d++ = *s++) // copia até que '\0' é encontrado
;
}
int main(void)
{
char y[3]; // cria uma região local
char *p1 = (char *)malloc(10*sizeof(char)); // outra região local na memória heap
p1[9] = '\0'; // insere o terminador na maior região
strcopy(y, p1); // sobreescreve a região local
free(p1);
return 0; // agora coisas ruins acontecem
}
A função Struct
(struct) é uma coleção de campos que podem ser referenciados pelo mesmo nome. A estrutura permite que informações relacionadas mantenham-se juntas.
A forma de declaração de uma estrutura em C é:
struct (nome_da_estrutura) {
tipo nome_var1;
tipo nome_var2;
...
} variável_tipo_nomedaestrutura;
Exemplo: struct cliente {
char nome[30];
char rua[50];
int idade;
} voce;
A função Struct
(struct) é uma coleção de campos que podem ser referenciados pelo mesmo nome. A estrutura permite que informações relacionadas mantenham-se juntas.
A forma de declaração de uma estrutura em C é:
struct (nome_da_estrutura) {
tipo nome_var1;
tipo nome_var2;
...
} variável_tipo_nomedaestrutura;
Exemplo: struct cliente {
char nome[30];
char rua[50];
int idade;
} voce;
Busca binaria em linguagem C
Ela parte do pressuposto de que o vetor está ordenado e realiza sucessivas divisões do espaço de busca (Divisão e conquista) comparando o elemento buscado (chave) com o elemento no meio do vetor
int PesquisaBinaria ( int k[], int chave , int N)
{
int inf,sup,meio;
inf=0;
sup=N-1;
while (inf<=sup)
{
meio=(inf+sup)/2;
if (chave==k[meio])
return meio;
else if (chave<k[meio])
sup=meio-1;
else
inf=meio+1;
}
return -1; /* não encontrado */
}
Busca sequencial ou linear em linguagem C
Este método varre todo o vetor atrás do valor digitado pelo usuario.
/**
* Retorna -1 caso não encontre ou a posição
* caso encontre.
*/
int procura(char vetor[], int tamanho, char elementoProcurado) {
int i;
for (i = 0; i < tamanho; i++) {
if (vetor[i] == elementoProcurado) {
return i;
}
}
return -1;
}
/**
* Retorna -1 caso não encontre ou a posição
* caso encontre.
*/
int procura(char vetor[], int tamanho, char elementoProcurado) {
int i;
for (i = 0; i < tamanho; i++) {
if (vetor[i] == elementoProcurado) {
return i;
}
}
return -1;
}
Bubble Sort em Linguagem C
Este é um método de ordenação de vetor, ele vai testando o indice atual com o próximo e deixando o menor primeiro, ele caiu em desuso porque era muito demorada a ordenação dele.
Sintaxe:
Sintaxe:
void bubble( int v[], int qtd )
{
int i;
int j;
int aux;
int k = qtd - 1 ;
for(i = 0; i < qtd; i++)
{
for(j = 0; j < k; j++)
{
if(v[j] > v[j+1])
{
aux = v[j];
v[j] = v[j+1];
v[j+1]=aux;
}
}
k--;
}
}
Busca sequencial em linguagem C
Este método consiste em varrer o vetor inteiro atrás da informação que o usuário deseja, por ser muito lento e ocupar muita memória este método caiu em desuso.
Exemplo:
#include #include
int vetor [10];
int busca;
int achou=0;
main()
{
for (i=0;i<10;i++)
{
printf("Digite um número");
scanf("%i",&vetor[i]);
}
printf("Informe o número que deseja buscar");
scanf("%i",&busca);
for(i=0;i<10;i++)
{
if (vetor[i]==busca)
{
achou=1;
}
}
if (achou==1)
{
printf("Achou");
}
else
{
printf("Não achou");
}
Lembrando que esse é só um dos muitos jeitos que da para fazer a busca linear.
Exemplo:
#include
int vetor [10];
int busca;
int achou=0;
main()
{
for (i=0;i<10;i++)
{
printf("Digite um número");
scanf("%i",&vetor[i]);
}
printf("Informe o número que deseja buscar");
scanf("%i",&busca);
for(i=0;i<10;i++)
{
if (vetor[i]==busca)
{
achou=1;
}
}
if (achou==1)
{
printf("Achou");
}
else
{
printf("Não achou");
}
Lembrando que esse é só um dos muitos jeitos que da para fazer a busca linear.
Tipos primitivos do Java
boolean -> Só admite true e false.
char -> Usado no código unicode cada caracter ocupa 2bytes (16bits), podendo apresentar 65536 valores diferentes conforme os caracteres unicode.
Inteiros
byte -> Ocupa 1 byte na memória e os valores vão de -128 até +127.
short -> Ocupa 2 bytes na memória e os valores vão de -32768 até +32767.
int (Default do Java) -> Ocupa 4 bytes na memória e os valores vão de -2147483648 até +2147483647.
long -> Ocupa 8 bytes na memória e os valores vão de -9223372036854775808 até +9223372036854775807.
Reais
float -> Ocupa 4 bytes na memória e os valores vão de -34028 E +38* até + -34028 E +38
double (Default do Java) -> Ocupa 8 byte na memória e os valores vão de -17976 E +308 até +17976 E +308.
Obs: este "E" nos valores de float e double corresponde a base 10, ou seja, é 10 elevado a +38, ele sempre será elevado pelo número que vem logo após ele.
char -> Usado no código unicode cada caracter ocupa 2bytes (16bits), podendo apresentar 65536 valores diferentes conforme os caracteres unicode.
Inteiros
byte -> Ocupa 1 byte na memória e os valores vão de -128 até +127.
short -> Ocupa 2 bytes na memória e os valores vão de -32768 até +32767.
int (Default do Java) -> Ocupa 4 bytes na memória e os valores vão de -2147483648 até +2147483647.
long -> Ocupa 8 bytes na memória e os valores vão de -9223372036854775808 até +9223372036854775807.
Reais
float -> Ocupa 4 bytes na memória e os valores vão de -34028 E +38* até + -34028 E +38
double (Default do Java) -> Ocupa 8 byte na memória e os valores vão de -17976 E +308 até +17976 E +308.
Obs: este "E" nos valores de float e double corresponde a base 10, ou seja, é 10 elevado a +38, ele sempre será elevado pelo número que vem logo após ele.
Script para aparecer imagem igual ao site da globo
Apostila de linguagem C/C++
Site com dicas para Web Developer
Aew pessoal, quem quiser seguir para a area de programação voltada a web aqui vai uma dica de um ótimo site.
Nele contém várias dicas e muitas video aulas, vale a pena conferir.
Nele contém várias dicas e muitas video aulas, vale a pena conferir.