Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite galera, beleza?
É o seguinte, estou fazendo um exercicio em C++ mas me deparei com um problema.
O usuário irá digitar um número de 12 digitos (sem contar o - ), por exemplo :
1234567899-21
2324567313-67
Eu gostaria de saber qual a melhor forma de pegar APENAS os dois números depois do ' - '
O C++ interpreta o - como sinal de subtração, e não esta dando certo..
Tentei passar o número para uma string, para tentar ' cortar ' e depois voltar para double, mas sem sucesso,
ainda não sei manipular strings muito bem em C++ e tbm não consegui passar de double pra string.
Alguém ai pode me ajudar?
Agradeço, abraço!
Ta mas como faço isso? como eu manipulo a string pra pegar apenas a parte desejada?..
@edit
Já consegui resolver ! :)
Poste a solução para a gente para quem tiver a mesma dúvida consiga resolver seu problema também =)
Abraços :D
Bom eu inclui a biblioteca <string>
criei uma variavel ' string numerochar '
a string nada mais é que um array, onde cada número será uma posição
por exemplo :
Entrada : 1234567899-10
numerochar[0] = 1
numerochar[1] = 2
...
ou seja, basta eu pegar o numerochar[11] e numerochar[12] onde serão, respectivamente, 1 e 0.
assim funciona se você souber exatamente onde está o caractere -
uma solução independente disso seria usando strtok() :thumbsup:
usa regex \d{2}$
esta pega os dois últimos dígitos
estuda regex em c, o link abaixo peguei no gugou.
Se não precisar realizar operações matemáticas, é mais fácil pegar os números já como string.
Espero ter ajudado, FLW!