elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Problema programa en C en: 13 Noviembre 2012, 14:11 pm
Tengo un problema con este código bastante básico. Se supone que tiene que mostrar la línea mas larga y su longitud, pero cuando trato de compilarlo me tira este error:

Código:
gcc -o char_array char_array.c
char_array.c:4:5: error: tipos en conflicto para ‘getline’
/usr/include/stdio.h:675:20: nota: la declaración previa de ‘getline’ estaba aquí
char_array.c:30:5: error: tipos en conflicto para ‘getline’
/usr/include/stdio.h:675:20: nota: la declaración previa de ‘getline’ estaba aquí

Este es el código:

Código:
#include <stdio.h>
#define MAXLINE 1000

int getline(char line[], int maxline);
void copy(char to[], char from[]);

main()
{
        int len;
        int max;
        char line[MAXLINE];
        char longest[MAXLINE];

        max = 0;
        while ((len = getline(line, MAXLINE)) > 0) {
                if (len > max) {
                        max = len;
                        copy(longest, line);
                }
        }

        if (max > 0) {
                printf("%s\n", longest);
                printf("Length: %d", max);
        }

        return 0;
}

int getline(char s[], int lim) {
int c, i;

        for (i=0; i < lim-1 && (c=getchar())!=EOF && c!='\n'; ++i)
                s[i] = c;

        if (c == '\n') {
                s[i] = c;
                ++i;
}

return i;
return 5;
}

void copy(char to[], char from[])
{
        int i;
        i = 0;
        while ((to[i] = from[i]) != '\0')
                ++i;
}
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines