Túlio Cezar Posted October 23, 2011 Report Share Posted October 23, 2011 Com ajuda do nosso amigo mJi, concegui montar com sucesso esse código:#include <stdio.h> #include <windows.h> int main() { char p[30] = "Ping"; char ip[30]; char resultado[100]; printf (" Digite um Ip: "); scanf ("%s",&ip); sprintf( resultado, "%s %s", p, ip); system (resultado); system ("pause"); return 1; }O problema e que quando digito 192.168.1.1 -t ele não imprime o -t por causa do espaço.queria saber se existe alguma forma, para ele aceitar o espaço. Quote Link to comment Share on other sites More sharing options...
0 mJi Posted October 23, 2011 Report Share Posted October 23, 2011 O problema e que quando digito 192.168.1.1 -t ele não imprime o -t por causa do espaço.queria saber se existe alguma forma, para ele aceitar o espaço.Quem bom que está progredindo...Só uma coisinha: Ao se ler uma string com o scanf, não se deve colocar o & ('E' comercial) antes do nome do vetor de char.Sobre os espaços: o que ocorre é que o scanf considera o espaço como o fim da string, e ignora qualquer coisa que vier depois dele.O que você pode fazer é utilizar uma expressão regular no scanf, para ele aceitar espaços:scanf("%[^\n]", ip); Esta expressão regular faz com que o scanf leia e guarde no vetor de char todo e qualquer caracter digitado antes de um '\n' (quebra de linha, ou seja, até o usuário digitar Enter). Outra maneira é utilizar o fgets: fgets(ip, 20, stdin); Porém, o fgets não tira o '\n' do final da string. Tem de se fazer isto você mesmo. Ficando assim: #include <stdio.h> #include <windows.h> int main(){ char p[30] = "Ping"; char ip[30]; char resultado[100]; printf (" Digite um Ip: "); scanf ("%[^\n]",ip); sprintf( resultado, "%s %s", p, ip); system (resultado); system ("pause"); return 1; } Quote Link to comment Share on other sites More sharing options...
Question
Túlio Cezar
Com ajuda do nosso amigo mJi, concegui montar com sucesso esse código:
O problema e que quando digito 192.168.1.1 -t ele não imprime o -t por causa do espaço.
queria saber se existe alguma forma, para ele aceitar o espaço.
Link to comment
Share on other sites
1 answer to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.