shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Declarar inteiro longo


From: Julio C. Neves
Subject: Re: [shell-script] Declarar inteiro longo
Date: Sun, 27 Jul 2008 22:19:38 -0300

Salve Guilherme,
em C vc pode colocar um inteiro (e somente um inteiro. Real não) em uma
variável tipo char, pois à época do desenvolvimento do C não se falava em
campo alfabético e sim alfanumérico, mas este inteiro que vc armazenou se
comportará como alpha e, para executar qq operação aritmética você terá de
"enganar" o compilador com um (int)var. O recíproco vc não conseguirá fazer.

Em shell vc sequer declara o tipo da variável. Além disso ele te dá outras
facilidades, veja:

$ unset var
$ echo $[++var] # Como var não existia e estamos somando algo a ela, o Shell
criou var com zero
1
$ var=guilherme
$ echo $var
guilherme
-- 
Abraços,
Julio
*Em setembro estarei dando um treinamento
Shell em Brasília (em 2 fins de semana).
Mais informações: www.tecnologiabr.com.br
Tel: (61) 3354-3162*


2008/7/27 Guilherme Gall <address@hidden>

>   Saudações Julio e pessoal da lista,
>
> Posso estar cometendo um equívoco, então por favor me corrijam se eu
> estiver errado. Mas C não possui tipagem fraca? Por exemplo, posso
> tranquilamente declarar uma variável char, atribuir um valor numérico
> a ela, alterar essa variável com operações como adição ou
> multiplicação e depois imprimir seu valor como um decimal (através do
> formatador %d da função printf por exemplo) sem qualquer problema.
>
> Nesse sentido entendo que shell e C estão no mesmo barco das
> linguagens fracamente tipadas. A diferença é que C teria tipagem
> estática por atribuir um tipo, ainda que fraco, a variável e não a seu
> valor (ou seja, uma variável não muda de tipo ao longo da execução do
> programa) e shell teria tipagem dinâmica pois seu tipo dependeria do
> contexto, com a variável podendo ter um tipo diferente em dois pontos
> distintos da execução do programa.
>
> Se alguém puder me dar um esclarecimento sobre os conceitos de tipagem
> que citei acima e dizer onde o shell se enquadra, ficaria agradecido.
>
> Abraços,
> --
> Guilherme Magalhães Gall
>
> 2008/7/27 Julio C. Neves <address@hidden <julio.neves%40gmail.com>
> >:
> > Fala Felipe,
> > não entendi a sua dúvida pois ao contrário do C, que é fortemente tipado,
> o
> > Shell não tem tipagem nenhuma. Então para armazenar um valor em uma
> variável
> > basta fazer:
> >
> > VarNaoDeclarada=2323523452342363456345347546754.675467456754674567456
> >
> > E, apesar de ser um real grande pra chuchu, com float e tudo, isso não
> > produz erro. De qq forma mande o trecho do seu script onde tá dando kk
> para
> > podermos te ajudar melhor.
> >
> > Outra coisa: não acredite qdo te disserem que não dá para fazer alguma
> coisa
> > usando as ferramentas do shell. Pegue outras opiniões que provavelmente
> vc
> > conseguirá fazer.
> >
> > Abraços,
> > Julio
> >
> >
> > 2008/7/26 Felipe <address@hidden <felipecatojo%40gmail.com>>
> >
> >> Ola lista,
> >>
> >> Declarei uma variavel que recebe um valor da entrada padrao stdin do
> >> usuario no entanto quando se armazena um inteiro longo me retorna essa
> >> mensagem de erro :
> >>
> >> integer expression expected
> >>
> >> Em C eu declarava essa variavel como long int e conseguia armazenar o
> >> numero inteiro com grande quantidade de casas decimais ja no shell me
> >> retorna a mensagem acima.
> >>
> >> Alguem teria alguma soluçao?
> >>
> >> Grato
> >>
> >>
> >>
> >
> >
> >
> > --
> > Abraços,
> > Julio
> > Em setembro estarei dando um treinamento
> > Shell em Brasília (em 2 fins de semana).
> > Mais informações: www.tecnologiabr.com.br
> > Tel: (61) 3354-3162
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> > ------------------------------------
> >
> > ----------------------------------------------------------
> > Esta lista não admite a abordagem de outras liguagens de programação,
> como perl, C etc. Quem insistir em não seguir esta regra será moderado sem
> prévio aviso.
> > ----------------------------------------------------------
> > Sair da lista: address@hidden<shell-script-unsubscribe%40yahoogrupos.com.br>
> > ----------------------------------------------------------
> > Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> > ----------------------------------------------------------
> > Servidor Newsgroup da lista: news.gmane.org
> > Grupo: gmane.org.user-groups.programming.shell.brazil
> >
> > Links do Yahoo! Grupos
> >
> >
> >
> 
>



-- 
Abraços,
Julio
Em setembro estarei dando um treinamento
Shell em Brasília (em 2 fins de semana).
Mais informações: www.tecnologiabr.com.br
Tel: (61) 3354-3162


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]