KiNgPiTo Posted December 7, 2007 at 07:46 PM Report Share #152974 Posted December 7, 2007 at 07:46 PM boas... num codigo k fiz, utilizei o gotoxy(x,y) para posicionar o cursor dentro de 2 parêntesis ----- printf("( )"); mas se calhar de inserir 2 números, o 2º parêntesis desaparece... o 2º algarismo sobrepõe-se . keria saber se da para apenas no scanf que pede a opcao que vai tar entre os 2 parentesis apenas deixa-se introduzir 1 numero... 1 caracter... Obrigado Link to comment Share on other sites More sharing options...
Triton Posted December 7, 2007 at 07:47 PM Report Share #152975 Posted December 7, 2007 at 07:47 PM Não percebi bem a dúvida... mas para leres um caracter para uma variável utilizas o scanf da seguinte forma: scanf("%c", &var); <3 life Link to comment Share on other sites More sharing options...
Rui Carlos Posted December 7, 2007 at 07:48 PM Report Share #152976 Posted December 7, 2007 at 07:48 PM Com o scanf podes ler apenas um caracter, mas penso que não podes impedir o utilizador de introduzir mais caracteres. Rui Carlos Gonçalves Link to comment Share on other sites More sharing options...
FABIO_F_A_SANTOS Posted December 7, 2007 at 09:20 PM Report Share #153007 Posted December 7, 2007 at 09:20 PM Olá, Para ler apenas um caracter nem precisas de usar uma função como o scanf... Podes usar o getchar(), e se quiseres garantir que o utilizador não prime mais do que uma tecla podes usar a função getch(), que responde assim que é premida uma tecla. Cumprimentos A solução de um problema, por mais complicado que seja, tem de ser simples e clara. Caso contrário criamos um novo problema!O caminho mais fácil é muitas vezes o melhor caminho! Link to comment Share on other sites More sharing options...
TheDark Posted December 8, 2007 at 02:49 AM Report Share #153046 Posted December 8, 2007 at 02:49 AM Atenção que a função getch não é standard. Desaparecido. Link to comment Share on other sites More sharing options...
KiNgPiTo Posted December 8, 2007 at 05:52 PM Author Report Share #153146 Posted December 8, 2007 at 05:52 PM Olá, Para ler apenas um caracter nem precisas de usar uma função como o scanf... Podes usar o getchar(), e se quiseres garantir que o utilizador não prime mais do que uma tecla podes usar a função getch(), que responde assim que é premida uma tecla. Cumprimentos tb ja tinha pensado nisso... mas so passa o scanf a frente assim k introduzido o valor da variavel e este so e introduzido assim k der Enter... eu keria era so dar pra escrever um valor... se carregasse noutra tecla essa substitui-se o k tinha posto anteriormente Link to comment Share on other sites More sharing options...
msr Posted December 11, 2007 at 02:48 PM Report Share #153652 Posted December 11, 2007 at 02:48 PM KiNgPiTo apesar de dar um bocado mais trabalho, sempre podes fazer tu uma função que faça isso que pretendes! Usando getchar() chegas lá. COMPONENT ORGANIZER easily organize your electronic parts and application notes Link to comment Share on other sites More sharing options...
KiNgPiTo Posted December 11, 2007 at 05:28 PM Author Report Share #153697 Posted December 11, 2007 at 05:28 PM KiNgPiTo apesar de dar um bocado mais trabalho, sempre podes fazer tu uma função que faça isso que pretendes! Usando getchar() chegas lá. podes me dizer +/- como ?? Link to comment Share on other sites More sharing options...
msr Posted December 12, 2007 at 02:22 AM Report Share #153801 Posted December 12, 2007 at 02:22 AM Faz um ciclo que funcione enquanto não for premido ENTER. Assim, por cada vez que o user introduz um char ele guarda numa variavel (atraves do getchar). Enquanto nao for premido ENTER ('\n') ele vai fazendo sempre a actualizaçao do conteudo da variavel com o novo char. Por ex, se o user introduzisse: abcdefghij ENTER O char que ficaria guardado na variavel seria j. Esse seria portanto o retorno da tua função. Penso ser isto o que pretendes. COMPONENT ORGANIZER easily organize your electronic parts and application notes Link to comment Share on other sites More sharing options...
TheDark Posted December 12, 2007 at 02:57 AM Report Share #153808 Posted December 12, 2007 at 02:57 AM Ele pretende escrever no ecrã cada tecla pressionada. A solução seria mais próxima do que o FABIO disse: utilizar a função getchar dentro de um while e só sair deste quando a tecla lida fosse enter. Para não apagar o parêntesis, basta fazer um putc(8) de cada vez que for lido um caracter, que faz com que o cursor volte para trás. Desaparecido. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now