Enviar um café pro programador

Pode me ajudar a transformar cafeína em código?

Como comparar strings em C: Diferenças entre strcmp() e strncmp()

Qual a melhor, mais recomendada e mais eficiente maneira de comparar duas strings, em linguagem C?

Qual função é a mais rápida: strcmp() ou strncmp() ?

Qual a diferença? O que cada uma faz? Qual maneira é a mais indicada?


Teste de velocidade: strcmp() ou strncmp() ?

Sem mais delongas, vamos fazer um simples teste, comparando o tempo de execução das duas funções que comparam strings:

  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <time.h>
  4.  
  5. int main() {
  6. char str1[] = "Curso C Progressivo";
  7. char str2[] = "Curso C Progressivo";
  8. long tempo1, tempo2;
  9. int i, j, k;
  10.  
  11. tempo1 = clock();
  12. for(i=0 ; i<10000 ; i++)
  13. j = strcmp(str1, str2);
  14.  
  15. tempo2 = clock();
  16. printf("%ld\n", tempo2-tempo1);
  17.  
  18. tempo1 = clock();
  19. for(i=0 ; i<10000 ; i++)
  20. j = strncmp(str1, str2);
  21.  
  22. tempo2 = clock();
  23. printf("%ld\n", tempo2-tempo1);
  24. }

Neste teste, bem rudimentar, fazemos mil comparações, usando as funções. Usamos a biblioteca time.h para usar a função clock(), que pega o tempo atual do sistema, para fazermos uma espécie de cronômetro.

Resultado dos tempos de execução:

strcmp: 820
strncmp: 866

Ou seja, strcnmp foi levemente mais rápida, mas neste caso


Qual a diferença entre strcmp() e strncmp() ?

strcmp e strncmp são funções de biblioteca padrão da linguagem C, para comparar strings tanto no C como no C++. No entanto, eles têm algumas diferenças em termos de desempenho e funcionalidade.

strcmp compara duas strings terminadas em null e retorna 0 se forem iguais, um valor menor que 0 se a primeira string for lexicograficamente menor que a segunda string e um valor maior que 0 se a primeira string for lexicograficamente maior que a segunda string. Ele compara as duas strings, caractere por caractere, até encontrar uma diferença ou atingir o final de qualquer uma das strings.

strncmp funciona de forma semelhante a strcmp, mas compara no máximo n caracteres. Isso significa que se n caracteres forem comparados e forem iguais, strncmp retornará 0 mesmo se houver caracteres adicionais em qualquer uma das strings. Isso pode ser útil quando você só precisa comparar uma parte das strings e não deseja comparar a string inteira.

Em termos de desempenho, strncmp geralmente é mais rápido que strcmp porque compara apenas um número especificado de caracteres, portanto, pode parar antes se as duas strings não forem iguais. No entanto, isso também significa que strncmp pode não fornecer uma comparação precisa de todas as strings. Além disso, se n for definido como um valor grande, strncmp pode ser mais lento que strcmp porque precisa comparar mais caracteres.

Portanto, a escolha entre strcmp e strncmp depende do seu caso de uso específico. Se você precisar comparar as strings inteiras, strcmp é a função apropriada a ser usada. Se você precisar comparar apenas uma parte das strings, strncmp pode ser mais indicado.

Vale a pena você conhecer e estudar uma nova função, chamada:

strcpy_s()

Como Ser Um Programador C Profissional

Programar é uma tarefa de amor ou ódio.
Muitos estão aqui estudando por conta de alguma cadeira na faculdade ou algum curso.

Outros estão aqui por interesse próprio.
Se este for seu caso, certamente já passou pela sua cabeça como se tornar um programador C profissional e trabalhar na área.

Neste artigo, iremos dar uma importante dica para quem desejar trabalhar como programador.

Para todo bom iniciante, um bom material complementar faz toda diferença na hora de adquirir conhecimento. 

Programador C no Mercado de Trabalho

Para quem gosta do ramo, programar é quase que uma atividade de lazer.
Entender C é entender como funcionam os computadores, como equipamentos eletrônicos trabalham, como são programados, qual sua lógica etc.

Ou seja, é como se você saísse da "Matrix" e visse como o mundo é feito e como funciona, já que não é nenhum exagero dizer que nossas vidas estão dominadas pela tecnologia.

Por ser a "linguagem mãe", linguagem na qual os principais Sistemas Operacionais são feitos e muito utilizada para se trabalhar com hardwares e eletrônicos de um modo geral, as possibilidades de trabalho com a linguagem C são muitas, muitas mesmo. Não é a toa que a linguagem mais usada do mundo.

De fato, não é a linguagem mais simples, pois ela trabalha em um nível mais baixo no seu hardware, que permite que o programador tenha total controle sobre cada bit, o que traz uma responsabilidade maior.

Porém, esta dificuldade é altamente compensadora, tornando programadores C bem exclusivos e "raros", inclusive no quesito profissional. Ou seja, é comum programadores C terem salários mais altos, pois terão tarefas com maior responsabilidade.

Neste tutorial, vamos dar mais detalhes para aqueles que desejarem entrar no Mercado de Trabalho como programadores profissionais em C.
São, basicamente, dois passos para que você possa começar a trabalhar como programador C.

Passo 1 para ser programador C: Estudar

Não tem segredo.
O primeiro passo é o mais demorado e que exige mais esforço: estude. Estude muito. Mais, e de novo.

Você está em um site que é um Curso de C.
Devore o conteúdo, faça exercícios, entre em forums, tire dúvidas, responda, assista as vídeo aulas que aconselhamos, baixe as apostilas e tutoriais que fornecemos, tenha na cabeceira de sua cama o livro que indicamos e estude cada página dele.

Se pensa que é como outras profissões, ondem fazem algum curso, estudam uma vez e estão capacitados pro resto da vida, sinto muito, mas é melhor mudar de profissão.
Programador é estudante de Programação pro resto da vida.

Você vai sempre estudar, ler tutoriais, notícias, documentação, livros etc.
É uma carreira de aprendizado eterno e constante. Se gosta de programação C, vai adorar isso.

Passo 2 para ser programador C: Prove que estudou

Nenhum hospital contrata um médico por ele ter dito que é médico, vão pedir seu diploma e checar no Conselho de Medicina.
Nenhuma empresa também contrata um administrador só por ele dizer que é, ele também precisa provar que estudou e se formou.

A menos que você monte sua própria empresa e empreenda seu negócio, também vai ser necessário que você prove que estudou C, para ser contratado seja por uma empresa ou para um trabalho freelancer.
Pode ser que tenha feito uma faculdade, curso técnico ou o curso à distância que tenha certificado, mas você precisa mostrar que estudou, de alguma maneira.

Não vá confundir as coisas. O que vai garantir que você é um bom programador é o tanto que estudou (passo 1), agora o que vai te ajudar a entrar no mercado de trabalho é o passo 2.


Curso C Progressivo com Certificado

Se puder, faça um bom segundo grau, estude bastante para o vestibular/ENEM e passe em uma faculdade, e tente obter sua graduação, ainda é o caminho mais comum a seguir para entrar no mercado de trabalho como programador.

Porém, nem todos podem.
Alguns ainda são muito jovens, outros já tem família, trabalham ou moram em cidades que não possuem um bom curto nessa área.

Visando essas pessoas, vamos dar uma excelente dica: Buzzero, o maior, melhor e mais confiável sites para estudar online, que emitem certificados válidos em todo território nacional, e também servem como atividade extracurricular


Curso C Progressivo

Lá, você conta com conteúdo extra e uma avaliação final, para obter ser certificado e  se tornar um programador C Profissional, acesse:
Curso de C online com certificado grátis




Curso de C online com certificado

O que é Tipografia e sua importância no WeDesign

Como usar tipografia em Webdesign
Hoje em dia é nítido que ter um site deixou de ser um mero recurso atrativo para se tornar uma prioridade. Tanto uma empresa ou até um profissional freelancer deve contar com um site para assim garantir algo fundamental: a presença digital.

Na hora de se falar em ter um site, é preciso levar em consideração vários detalhes relevantes. O registro de domínio, por exemplo, é um deles. Graças a um domínio o site ganha muito em credibilidade e profissionalismo.


Porém além do domínio (e também de um bom serviço de web hosting), a preocupação com o aspecto visual do site não deve ser deixada de lado.

Assim como todo suporte de informação, um site possui as suas particularidades. Por isso, estabelecer um visual agradável e intuitivo constitui algo que os profissionais da área dão muita importância, que é a Experiência do Usuário.

Imagine uma loja virtual com imagens pouco detalhadas dos produtos, que não seja responsiva e com links desprovidos de uma hierarquia que facilita a navegação. Tudo isso prejudica o atendimento de qualidade e compromete o futuro do negócio.

Entretanto, outro grande detalhe que deve ser levado em conta na hora de criar uma identidade visual de sucesso consiste na escolha certa da Tipografia.

Como a tipografia ajuda um projeto na web

A tipografia está relacionada com a arte e o domínio técnico de compor e arranjar palavras e textos.

Sabe quando você se depara com um texto e consegue ler o conteúdo sem dificuldade, sem perder a concentração diante elementos que retiram a sua imersão na leitura? Pois então, isso é tudo “culpa” de um bom trabalho de tipografia.

Será que essa fonte está legível? Será que uma fonte com serifa é a ideal? Essas são algumas das indagações que surgem na mente de um designer gráfico na hora de criar um site.

A Tipografia sempre foi uma das protagonistas na mídia impressa, pois jornais, livros, revistas e panfletos devem contar com fontes legíveis. Dessa maneira, elas conseguem transmitir com sucesso a mensagem.

O mesmo vale para os sites, blogs, landing pages e outros formatos que a internet possibilita como suporte para conteúdo textual. A Tipografia é importante em todos os meios de comunicação.

Por isso, os profissionais da área do design gráfico, que dominam os conceitos de softwares como, por exemplo, o Illustrator da Adobe, devem estar cientes das diferentes características e propósitos das mais variadas fontes tipográficas.

Cada fonte transmite um conceito diferente. Optar pela fonte ideal na hora de criar uma peça gráfica não pode ser algo feito aleatóriamente. O ideal é que esse procedimento deve estar baseado na mensagem que o designer deseja passar ao leitor.

Uma tipografia pode ser suave e leve, enquanto outra pode ser pesada e robusta. É o tipo de conteúdo que vai definir qual deverá ser a escolhida.

Um exemplo de empresa que fez uma mudança sutil na sua tipografia é a Netflix. A alteração foi feita em 2014, mudando para um visual mais simples. Sendo assim, confira a seguir alguns dos principais critérios para a escolha de uma boa tipografia.

  • Legibilidade

A melhor fonte é aquela fácil de ler, e ponto! Esse deve ser um aspecto fundamental na hora de escolher. É aí que entram elementos importantes que orientam a escolha para obter uma boa legibilidade.

A existência ou não de serifa é um deles. A serifa nas fontes pode ser uma maneira eficiente interessante de orientar a leitura. Por outro lado, a ausência de serifa torna o texto menos sisudo.

Contudo, é necessário destacar ainda que o tamanho da fonte, aliado a cor em relação aos outros elementos visuais do texto, também é decisivo para assegurar uma boa legibilidade.

  • O espaço de texto

Quando se trata de trabalhos visuais para a construção de sites e blogs, o texto não tem a necessidade de estar justificado como é e costume em trabalhos acadêmicos, por exemplo.

A razão disso é que linhas mais curtas não forçam a leitura em apenas um sentido, tornando o processo de ler mais agradável e pouco cansativo.
Além disso, não justificar facilita para a responsividade do conteúdo, o tornando adaptável em variados tipos de tela.

  • Hierarquia visual

Em um texto, algumas frases ou palavras são mais importantes que outras. É aí que um bom designer gráfico atua sabendo trabalhar bem a hierarquia visual.

De uma forma geral, para destacar algumas frases ou palavras, é válido escrevê-las com a fonte maior ou bold, as priorizando aos olhos do leitor.

  • Funcionalidade

Por mais bonita que seja uma fonte, será que ela é a mais adequada para o conteúdo do seu trabalho gráfico? Ela casa bem com os outros elementos ou com a “cara” do negócio?

Uma fonte manuscrita, por exemplo, pode ser interessante para frases curtas, mas poderá ser cansativa para textos mais longos. A ideia é sempre optar pela fonte que trabalhará melhor com os outros elementos e entregará a melhor experiência ao usuário.

Conclusão

Constantemente são criadas novas fontes tipográficas. Basta procurar pela web em sites com esse propósito e notar a infinidade de opções. No entanto, cabe ao profissional de Design pesquisar e utilizar a mais adequada para o seu trabalho.

Portanto, diante de uma escolha certa de fontes, a construção visual, seja de um site ou de um material impresso, fica mais atraente, legível e profissional.

Tempos de crise? Aprenda a ganhar dinheiro criando um site

Para muita gente, época de crise é sinônimo de desespero e aflição, enquanto que para outros é a oportunidade perfeita para sair da zona de conforto.

Em épocas de crise, ficar de braços cruzados, aguardando dias melhores e reclamando da atual situação não é uma alternativa inteligente.

São em momentos conturbados que é preciso analisar o problema e encontrar uma solução.
Em uma época como a atual, em que a internet é bastante influente, uma das maneiras para driblar a crise é investir na criação de um site.

Como ganhar dinheiro ao criar um site

Poder contar com um site é uma excelente alternativa para profissionais autônomos e pequenas empresas. A interatividade e o alcance de público que um site possui é um ponto positivo para quem quer empreender.

Contudo, para criar um site e ser bem sucedido nessa empreitada, é importante estar ciente de alguns detalhes básicos, os quais veremos a seguir.

Escolha da plataforma

Plataformas é o que não faltam para você dar início ao seu projeto online. Atualmente o mercado disponibiliza plataformas gratuitas e de fácil gerenciamento para a construção de diferentes tipos de sites.

Algumas das mais famosas são o Wix, o Webnode e o Joomla!. Há também o Wordpress, considerada a mais eficiente e preferida de vários usuários, desde os iniciantes aos mais experientes.

O Wordpress se destaca por ter diversos plugins e uma ampla variedade de templates, detalhes fundamentais para determinar a qualidade do seu projeto.

Além disso, algumas empresas que atuam oferecendo hospedagem de sites possuem serviços especializados justamente na plataforma Wordpress.


Escolha da Hospedagem e domínio para o seu site

E falando em web hosting, a escolha da hospedagem de sites e o registro de domínio também fazem parte dos ingredientes para que o seu projeto tenha êxito.

Sites mais robustos, que apresentam um tráfego mais elevado, necessitam de um serviço de web hosting qualificado, evitando lentidão no carregamento e até mesmo quedas.

Um domínio, por sua vez, é o seu endereço na internet. É por meio dele que as pessoas chegarão até você, por isso é importante registrar o seu domínio e assim profissionalizar o seu negócio.

Alternativas para ganhar dinheiro com o seu site

Se depois de encontrar a plataforma mais adequada e a hospedagem ideal para o seu site, chega a hora de fazer ele render dinheiro. Afinal, em tempos de crise, é preciso agir!

Sendo assim, selecionamos algumas alternativas que guiarão você nessa missão de contornar transformar a crise em uma oportunidade.

Programa de afiliados

Quem tem um site ou um blog pode investir em um programa de afiliados. Esse tipo de programa funciona basicamente sobre geração de conteúdos, pois são informações relevantes que vão trazer visitantes para o seu site.

O seu lucro vai aparecer por meio de links de afiliados. Desse modo, um afiliado vende uma série de produtos e infoprodutos em diversos canais. Os infoprodutos geralmente são e-books, podcasts e vídeo aulas.

O conteúdo, nesse caso, adquire uma enorme relevância para o sucesso de um programa de afiliados. Afinal, é o conteúdo que faz o visitante ter o interesse nos infoprodutos oferecidos.

Sendo assim, quem está pensando em investir nesse modelo de negócio pode se perguntar: Qual ou quais produtos vou vender?

O ideal é definir um nicho, um assunto que você tem interesse e conhecimento sobre ele. Com isso, você vai concentrar o conteúdo produzido e a venda do produto para um público definido.

Invista em um e-commerce

A compra e a venda via internet cresceu muito nos últimos anos. Muitas pessoas já perderam o medo de adquirir os seus produtos em sites e não abrem mão dessa comodidade.

Para você investir em um e-commerce a escolha da plataforma vai fazer toda a diferença, afinal, ela será a sua loja onde você vai expor os seus produtos.

Por isso, ter à disposição uma plataforma com recursos otimizados para o e-commerce se torna um dos requisitos básicos. O Wordpress, por exemplo, conta com recursos adequados para uma loja virtual.

Há também o Magento, que possui uma grande variedade de recursos, tais como maneiras para você gerenciar o seu estoque, cadastro de produtos e meios de pagamento como cartão de crédito e boleto.

Lembre-se também que, em se tratando de e-commerce, é fundamental adquirir um plano de hospedagem de sites de qualidade e capaz de suportar um tráfego elevado.

Além disso, você vai precisar possuir em seu e-commerce o certificado SSL. Ele consiste em um protocolo de segurança e atua protegendo os dados dos seus clientes, tais como senhas, RG e CPF.

O que você pode vender em um e-commerce são produtos em geral, desde bens alimentícios, artigos tecnológicos e vestuário. Enfim, opções não faltam, basta apenas você escolher o seu nicho.

Filas em C - Como Programar (Tutorial de C sobre Queue - Estrutura de Dados)

Neste Tutorial de C de nossa apostila online, vamos falar sobre uma importante estrutura de dados dinâmica, que é a fila.

Junto com as listas encadeadas e as pilhas em C, formam o conjunto de estrutura de dados mais importantes e usados.

Pilhas (Stack) em C - O Que É e Como Implementar (Tutorial de C Estrutura de Dados)

Neste Tutorial de C, vamos falar sobre uma das estrutura de dados mais importantes da computação, que são as pilhas (stack, em inglês).

Vamos entender o que são pilhas, para que servem, como implementar e programar uma, do zero.

Apostila de C - Arquivos, Entra e Saída Padrão (Lista 7)

Neste tutorial de nossa Apostila C Progressivo, iremos propor para os leitores de nosso curso uma série de questões que foram criadas pelo Curso de C da UFMG, e presentes em sua apostila, sobre os assuntos de Arquivos, Entrada e Saídas padronizadas em C.

Em seguida, iremos resolver, dar o gabarito e comentar todos os códigos.

Apostila de C - Função (Lista 6)

Neste tutorial de nossa Apostila C Progressivo, vamos propor as questões do Curso de C da UFMG sobre o assunto Função, em seguida iremos comentar e resolver cada um dos exercícios.

Apostila de C - Ponteiros, Vetores, Matrizes e Strings (Listas 4 e 5)

Neste tutorial de nossa Apostila C Progressivo, iremos exibir as questões da apostila de C da UFMG sobre os assuntos de Ponteiros, Vetores, Matrizes e Strings, e em seguida iremos comentar cada uma das questões, códigos e dar o gabarito correto dos exercícios.

Apostila de C - Testes Condicionais (IF-ELSE e SWITCH-CASE), Laços (FOR e WHILE) e Operador Ternário (? :) (Lista 3)

Neste tutorial de nossa Apostila C Progressivo, iremos mostrar as questões da apostila de C da UFMG sobre os Testes Condicionais IF ELSE e SWITCH, Laços ou loopings WHILE e FOR e do Operador Ternário em C: <condição> ? <operação 1> : <operação 2> ;

Apostila de C - Variáveis, Operadores, Operações Matemáticas e Lógicas (Lista 2)

Neste tutorial, iremos resolver a Lista 2 da Apostila de C da UFMG.
Mostraremos as questões e comentaremos cada um dos exercícios.

Apostila de C - Conceitos Básicos sobre a Linguagem C (Lista 1)

Neste tutorial de nosso curso, iremos mostrar os exercícios da Lista 1 da Apostila de C da UFMG, que trata os conceitos Básicos sobre programação em C.

Apostila de C completa - Resolução comentada da Apostila de C da UFMG

Quem já procurou por Apostila de C no Google certamente já se deparou com o famoso curso de C que era oferecido pela UFMG, cujo material é disponibilizado até hoje, e é uma referência em material para estudar a linguagem C.

Lendo arquivos em C: As funções fgetc, fscanf e fgets

Agora que já aprendemos a escrever em arquivos em C, vamos aprender agora em nossa apostila de C a outra parte: aprender como ler informações dos arquivos!

Iremos aprender como ler caractere por caractere, ou um trecho pré-formatado ou linha por linha.
Isso vai depender da necessidade de cada aplicativo em C.