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 <[EMAIL PROTECTED]> > 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 <[EMAIL PROTECTED] <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 <[EMAIL PROTECTED] <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: [EMAIL > > PROTECTED]<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]
