Logo Hardware.com.br
videira
videira Membro Junior Registrado
78 Mensagens 1 Curtida

Retornar string em função

#1 Por videira 21/12/2005 - 21:24
O que eu gostaria de fazer era trocar a função float get_strings() pela
função char get_strings e fazer o retorno da string obtida.
Só consigo retornar float ou int.
Não consigo retornar uma string.
Já pesquisei (arrays, ponteiros ...!) e não consegui uma forma de fazer isso.
Alguém poderia me ajudar?

#include
#include

float get_strings(); /*---> char get_strings() */

main()
{
float num;

system("clear");

printf("\nImprimir numero: %f\n",num = get_strings());

return 0;

}

float get_strings() /*---> char get_strings() */
{
char str[30];

printf("\nEntre com uma string:");

/* outras linhas de código */

return atof(gets(str)); /* return str*/

}
jqueiroz
jqueiroz Cyber Highlander Registrado
104K Mensagens 5.7K Curtidas
#2 Por jqueiroz
22/12/2005 - 02:43
Em vez de retornar, faça quem chamou passar a string já alocada, e o tamanho da área reservada.
Você só a preenche wink.png

#include <stdio.h>
#include <stdlib.h>

void get_strings( char *, int ); /*---> char get_strings() */

int main()
{
float num;
char string[256];

system("clear&quot;

get_strings( string, 256 );
printf("\nImprimir numero: %s\n", string );

system("pause&quot;
return 0;

}

void get_strings( char *str, int max )
{
int last;

printf("\nEntre com uma string:&quot;

/* outras linhas de código */

fgets(str, max, stdin );
last = strlen(str)-1;
if( str[last] == '\n' ) str[last] = '\0';

}
"chmod 777 nunca ajudou ninguém" (c) 2002-2021 JQueiroz/FGdH
Conheça o Blog do Zekke
videira
videira Membro Junior Registrado
78 Mensagens 1 Curtida
#4 Por videira
22/12/2005 - 18:03
Valeu jqueiroz.
Funcionou completamente após a retirada de system("pause");
Talvez isso ocorreu por eu estar compilando no linux.

___________________________________
Entre com uma string:teste

Imprimir numero: teste
sh: line 1: pause: command not found ---> mensagem de erro
___________________________________

Esses são os meus primeiros passos em C.
Por isso nem me atrevo a "entender" o que foi escrito na resposta do intruso!
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal