Ponteiro é um recurso da linguagem C que consiste em:

  • Apontar ou acessar endereços de memória.
  • Acessar variáveis que não são acessíveis em uma função.
  • Retornar um ou mais valores em uma função.
  • Entre outros…

Como declarar um ponteiro:

Exemplo:

No exemplo acima um ponteiro ‘p’ e uma variável ‘q’ são declarados, ‘q’ recebe 1 e ‘p’ recebe o endereço de memória da variável ‘q’, vale lembrar que o & (‘e’ comercial) mostra o endereço de memória, como ‘p’ é um ponteiro então ele apontará para o valor que está armazenado naquele endereço de memória. Imagine gavetas enumeradas de um guarda-roupa, podemos imaginar essa numeração como endereços de memória e o que o ponteiro faz é apontar para numeração dessa gaveta, mostrando o seu conteudo:

 Usando ponteiros em funções:

O programa acima terá a seguinte saída:

Valor de X antes da funcao: 1
Ponteiro P: 1
Valor de X depois da funcao: 2

A variável ‘x’ é declarada com o valor igual à 1, o endereço de memória da variável ‘x’ é passado ao ponteiro ‘p’ através dos parâmetros da função ‘func’, então ‘p’ aponta para o endereço de ‘x’ e atribui o valor 2.

Simples programa em C que calcula o fatorial de um número qualquer:

Como funciona?

A variável “n” armazena o número no qual se quer calcular o fatorial, o loop é executado, a variável “n” é multiplicada por “fat”, então temos “fat = n” e a cada iteração 1 unidade é subtraída do número escolhido até que ele seja igual à 1, ou seja, a variável “fat” é multiplicada a cada iteração pelo antecessor do número escolhido.

Todos os Loops tem a mesma função que é repetir uma instrução num número determinado ou indeterminado de vezes.

A estrutura do loop FOR é da seguinte forma:

Por exemplo:

O programa acima exibe na tela os números de 0 a 100. O loop FOR normalmente é usado também para se fazer loop infinito já que seus campos não são obrigatórios, mas isso é apenas um costume, o que não te impossibilita de usar o loop WHILE ao invés do FOR.

Exemplo de loop infinito com o FOR:

Estrutura do loop While:

Exemplo:

O loop WHILE se repete até o valor zero seja inserido pelo usuário.

Estrutura do loop Do-While:

O loop Do-While diferente do FOR e WHILE, testa a condição no final da execução ou seja, os comandos que estão dentro das chaves do ‘Do’:

do{
comando1;
comando2;
}

são executados, em seguida acondição dentro do WHILE é testada, caso seja verdade os comandos dentro das chaves do ‘Do’ são executados novamente, caso seja falso o programa sai do loop.

Aprenda como instalar o CSF Firewall. Recomendo o uso do Putty neste tutorial.

Atenção: É importante saber que não se deve ter nenhum outro firewall iptables ao instalar o CSF, caso o contrário poderá ocorrer conflito entre eles.

No putty, conecte em seu servidor e digite os seguintes comandos na seguinte ordem:

rm -fv csf.tgz
wget http://www.configserver.com/free/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh

 

Agora teste se você tem os módulos do iptables exigidos:

perl /etc/csf/csftest.pl

 

Não se preocupe se não puder usar todos os recursos do firewall pois o CSF não reporta erros fatais.

 

Você poderá configurar o CSF e LFD  editando os arquivos diretamente em /etc/csf/*, ou no painel do WHM caso seu servidor tenha um.

A instalação do CSF no cPanel já é pré-configurada para servidores cPanel com todas as portas padrões do cPanel abertas

A instalação do CSF no DirectAdmin já é pré-configurada para servidores DirectAdmin

com todas as portas padrões do DirectAdmin abertas.

CSF automaticamente configura as portas do SSH na instalação onde está rodando uma portal que não é padrão.

Esteja certo de que o kernel logging daemon (klogd) esteja ativado. Normalmente, servidores VPS tem ele desativado. Você deve verificar em /etc/init.d/syslog e ter certeza de que as linhas do klogd não estejam comentadas. Caso altere o arquivo, lembre-se de reiniciar o syslog.

Em C uma expressão verdadeira é uma expressão que é igual ou que retorna qualquer valor diferente de 0 e uma expressão falsa é igual ou retorna 0.

A forma geral da sentença If e Else é:

Exemplo:

No exemplo acima a condição “if” é executada, como 1 não é maior que 2, zero é retornado e a expressão é tida como falsa então o else é executado e exibirá na tela a palavra “Falso”.

OBS: Um erro comum é no uso do sinal “=” ao tentar comprar se dois valores são iguais. Em C vale lembrar que o sinal “=” é usado para atribuição e “==” para comparação, então quando for comprar igualdade entre dois valores deve-se usar “==” ao invés de “=”.

 

If e Else aninhados:

Quando mais de uma expressão for colocada dentro da condição If ou Else, deve-se colocar as expressões entre chaves como mostra o exemplo:

Simples gerador de CPF em C/C++. criado por mim com código fonte e download logo abaiaxo:

Download: Gerador de CPF

Código fonte:

CHMOD é um comando usado para alterar permissão de arquivos ou diretórios.

Significado dos valores para CHMOD:

  • 700: Somente o proprietário pode ler.
  • 755: Todos podem ler mas não escrever.
  • 775: Somente o grupo pode ler e escrever.
  • 770: Ninguém exceto o grupo pode ler.
  • 666: Todos podem ler e escrever.
  • 777: Todos podem ler, escrever e executar.

PuTTy é usado em sistemas Windows para conectar-se, por exemplo, a uma máquina Unix. PuTTy abre uma janela. Então, qualquer coisa que você digitar na janela será enviada para a máquina Unix e tudo o que a máquina Unix enviar de volta é exibido nessa janela. Logo abaixo estão alguns comandos básicos dessa ferramenta tão útil:

Navegando em diretórios:

 cd

Comando usado para navegar em diretórios. Por exemplo:

 cd pasta1/pasta2

O comando acima te leva até a pasta 2.

 

Exibe conteúdo:

 ls

Mostra o conteúdo da pasta em que você estiver.

 

Criando arquivos e pastas:

 touch arquivo.html

Use o comando “touch” para criar arquivos.

 rm file.html

Use o comando “rm” para remover um arquivo.

 mkdir myfolder

Cria uma nova pasta.

 rmdir myfolder

Remove uma pasta. Vale lembrar que a pasta deve estar limpa.

 mv folder1/file.html folder2/file.html

Usado para mover um arquivo ou renomeá-lo. Para renomear basta mudar o nome do arquivo depois de escrever o nome do diretório de destino.

 

Zipando (compactando) e fazendo backup:

 zip -r foo.zip foo/

Compacta a pasta “foo” e todo seu conteúdo em um arquivo de extensão ‘.zip’ chamado ‘foo.zip’.

 zip foo.zip foo.html

Compacta o arquivo ‘foo.html’ em um arquivo ‘.zip’ chamado ‘foo.zip’.

 

Mudando permissões (CHMOD) de arquivos e pastas:

 chmod 755 arquivo.html

Muda a permissão do arquivo. A permissão da pasta é mudada da mesma forma.

 chmod -r 755 pasta

Muda a permissão da pasta e de todos os arquivos e subpastas contidos nela.

 

Significado dos valores para CHMOD:

■700: Somente o proprietário pode ler.

■755: Todos podem ler mas não escrever.

■775: Somente o grupo pode ler e escrever.

■770: Ninguém exceto o grupo pode ler.

■666: Todos podem ler e escrever.

■777: Todos podem ler, escrever e executar.

 chown user:myself file.html

Muda o proprietário do arquivo “file.html” para o usuário chamado ‘myself’.