nov 8
Separando ou explodindo uma String em C++
icon1 Paulo Coutinho | icon2 C++, Tutorial | icon4 08 de novembro de 2012| icon3Sem Comentários »

 

Olá pessoal,

Vejo muitas pessoas com dúvida em relação a como fazer um split ou explodir uma string em partes usando um delimitador.

Vou então mostrar algumas técnicas possíveis de executar isso.

Vamos usar uma frase de exemplo:

O rato roeu a roupa do rei de roma.

 

Nossa intenção é separar cada palavra contida na frase usando o caracter [espaço] como delimitador e com isso ter uma lista em memória com todas as palavras encontradas.

Vou mostrar agora 3 métodos de fazer isto em C++ de forma prática e fácil.

1 – Se você usa a biblioteca Boost, use o código abaixo para em 3 linhas obter um vetor de strings com as palavras:

#include <boost/algorithm/string.hpp>
int main()
{
    vector<string> results;
    boost::split(results, line, boost::is_any_of(";"));
}

2 – Usando agora uma função antiga para saber o ponteiro na string de onde começa cada palavra:

#include
#include 

int main() {
    char s[] = "one, two,, four , five,"; /* mutable! */ const char* p;
    for (p = strtok( s, "," ); p; p = strtok( NULL, "," )) {
        printf( "\"%s\"\n", p );
    }
    return 0;
}

3 – E por último, uma função simples que funciona basicamente como o método #1:

#include <string>
#include <vector>

void split(string str, string separator, vector<string>* results)
{
    int found;
    found = str.find_first_of(separator);

    while(found != string::npos)
    {
        if(found > 0)
        {
            results->push_back(str.substr(0,found));
        }
		
        str = str.substr(found+1);
        found = str.find_first_of(separator);
    }

    if(str.length() > 0)
    {
        results->push_back(str);
    }
}

int main()
{
    vector<string> results;
    split("O rato roeu a roupa do rei de roma", " ", &results);
}

É isso ai. Espero que com estes códigos um pouco simples, ajudem a todos.

abr 21

Olá,

 

Recentemente criei um projeto no github onde irá facilitar a vida de muita gente.

 

Quem desenvolve jogos, sabe que é chato ficar configurando a IDE e também as bibliotecas e pensando nisso, criei um repositório onde quem usa a biblioteca Qt poderá facilmente fazer um clone desse repositório e sair usando a SFML independente da plataforma, seja Mac, Linux ou Windows.

 

Mas no que isso irá me ajudar?

 

Se você desenvolve em C++ e usa a SFML, basta você baixar o QtCreator (http://qt.nokia.com/downloads) que é gratuito e logo após instalar o QtCreator, faça um clone do projeto (https://github.com/prsolucoes/sfml-project) em uma pasta qualquer, abra o arquivo .pro e clique em “Run” no QtCreator e o projeto já estará configurado e funcionando.

 

O que foi implementado?

 

1 – Configuração independente de plataforma (windows, linux e mac)
2 – Código básico de teste de uma aplicação com SFML
3 – Todos os arquivos de include e lib para cada plataforma
4 – Ícone padrão para seu aplicativo – basta mudar o arquivo na pasta “resources” e recompilar
5 – Nome do binário gerado também é configurável
6 – As configurações do projeto são definidas em um único arquivo “sfml-project.pro”

 

Para baixar o projeto, acesse:
https://github.com/prsolucoes/sfml-project

 

Espero poder facilitar a vida de todos assim.

Obrigado!

fev 1

 

Este vídeo mostra um produto para controle de luz e em breve ventilador de teto usando controle remoto. Com ele você pode controlar a distância a luz do seu quarto e o ventilador de teto sem levantar da cama, da sala ou onde ele estiver.

Desenvolvido com componentes importados de qualidade.

Um novo acabamento será dado ao produto final, reduzindo até mesmo seu tamanho.

dez 24

Olá a todos,

 

Recentemente adquiri um sonar modelo HC-SR04, porém em vários blogs e fóruns diz que é necessário usar um módulo pro arduino chamado “Ultrasonic”, mas pelo que eu vi em comentários, esta biblioteca está defazada e resolvi então criar a minha própria.

Aproveitando a oportunidade criei um namespace chamado PRDuino para minha biblioteca, que será o conjunto oficial de classes compatíveis com o arduino e como prova inicial criei as classes para trabalhar com o sonar em questão.

O código é simples e funcional e vocês podem encontrar aqui:

https://github.com/prsolucoes/prduino

 

Leiam o arquivo README, pois nele está toda a documentação inicial para a instalação dos módulos que você precisa, que não é nada diferente do modo padrão de instalar módulos novos no arduino.

 

E para vocês terem uma idéia da facilidade de usar, da uma olhada no exemplo que aparece no menu da IDE do arduino:

https://github.com/prsolucoes/prduino/tree/master/PRDuino_Sonar/Examples/SonarDemo

 

Fiz um vídeo(24/12/2011) para mostrar como ficou o exemplo de um alarme com o PRDuino, Sonar e um Buzzer:

 

Uma coisa que percebi é que o ventilador influencia no sonar, talvez o vento influencie em alguma coisa ou algo deste tipo, pois com o vento batendo o sonar detecta uma resposta de volta a ele e dispara o alarme.

 

Obrigado a todos.

A paz!

 

ago 8

 

Olá,

 

Mais uma vez ajudamos no lançamento deste site de cupons de desconto, o Cupom Ligado (www.cupomligado.com.br).

Ficamos responsável por todo o processo de desenvolvimento do site e da área administrativa, junto com a equipe da Agência igual que fez um excelente trabalho de planejamento, design, estrutura e montagem.

Site: www.cupomligado.com.br

Screenshots:

 

mai 12

 

Olá,

 

Vou deixar aqui uma dica bem simples e útil, para quem usa o Google Chrome no Mac e ainda usa ele em inglês.

No Chrome não temos uma opção para mudar o idioma do navegador de forma fácil e tudo mais, porém vai um comando a ser executado no terminal que deixará ele em português.

exec defaults write com.google.Chrome AppleLanguages ‘(pt-BR)’

 

Obs: Em alguns lugares a aspa simples pode ser trocada por outro caractere, verifique se o comando copiado está mesmo com aspa simples.

Se você quiser colocar o  Chrome em outro idioma, basta trocar o pt-BR pelo idioma desejado.

Até mais, fiquem com Deus.

mai 5

 

Olá,

 

Saiu este mês a  nova publicação da revista Flash e Flex Developer Magazine com mais um artigo criado por mim.

O título do artigo é: Acessing iPhone Camera with AdobeAIR 2.6 and Flash.

O artigo criei ensina a criar uma aplicação para iPhone usando Flash/Flex e Adobe Air 2.6 onde você obtém um foto da câmera do telefone e exibe na tela do iPhone. Tudo isso para demonstrar as novas APIs que a Adobe lançou na versão 2.6 do Adobe Air para iPhone.

 

Link: http://ffdmag.com/magazine/1692-handling-iphone-stage-orientation-how-to-listen-for-handle-pan-gesture-events

mai 5

Olá,

 

Segue um script bem básico em PHP  que consulta o Google Tradutor para obter um arquivo MP3 com o texto falado, da mesma forma que o Google Tradutor usa naquele botão “ouvir”.

Mão no teclado:

<?php
$url  = “http://translate.google.com/translate_tts?tl=[lang]&q=[text]“;
$lang = “pt-BR”;
$text = “corre atras de aviao”;

$temp = $url;
$temp = str_replace(‘[lang]‘, $lang, $temp);
$temp = str_replace(‘[text]‘, urlencode($text), $temp);

file_put_contents(dirname(__FILE__) . ‘/som.mp3′, file_get_contents($temp));
?>
<a href=”som.mp3″ target=”_blank”>OUVIR</a>

 

Execute o arquivo PHP que você criou com este conteúdo no navegador e verá um  link com o texto “OUVIR”, onde você poderá baixar o arquivo MP3.

 

Fiquem com Deus.

mai 4

Olá,

 

Recentemente finalizamos o trabalho de desenvolvimento do site Amazon Woodwork, ficamos responsável pela parte de programação do site por completo.

O  site ficou muito bom, com o conteúdo em inglês e os controles e componentes em inglês também, além do design bem feito pela equipe da Agência Igual.

 

Imagem:

 

Link: http://amazonwoodwork.com/

mai 2
Como atualizar o xCode no MAC
icon1 Paulo Coutinho | icon2 Geral, Mac, Tutorial | icon4 02 de maio de 2011| icon3Sem Comentários »

Olá,

 

Hoje irei mostrar uma forma bem simples de remover/atualizar o xCode no MAC.

1 – Abra o terminal.

2 – Vá para o diretório raiz:

cd /

3 – Execute o comando:

sudo Developer/Library/uninstall-devtools –mode=all

 

Após executar o comando #3, irá ocorrer uma série de processos de remoção de aplicativos associados ao xCode e afins.

Após estes processos terminarem, você verá um resultado parecido com este:

 

 

PRONTO! Já foi removido.

Se você vai instalar agora uma nova versão, recomendo reiniciar o  computador antes.

 

Abraços e fiquem com Deus.

« Posts Anteriores