Visualizzazione dei risultati da 1 a 4 su 4

Discussione: [C] conflicting types

  1. #1

    [C] conflicting types

    salve a tutti, io ho questo programma che ho preso paro paro da un libro conforme al ANSI C ma mi dice che ci sono dei conflitti ,potresti aiutarmi cortesemente.
    codice:
    tomasz@tomasz-laptop:/media/Dati/Programmazione/1.9$ cc 1.9.c 
    1.9.c:4: error: conflicting types for ‘getline’
    /usr/include/stdio.h:651: note: previous declaration of ‘getline’ was here
    1.9.c:29: error: conflicting types for ‘getline’
    /usr/include/stdio.h:651: note: previous declaration of ‘getline’ was here
    ###########################################
    codice:
    #include <stdio.h>
    #define MAXLINE 1000 // massima lungezza di una riga di imput
    
    int getline(char line[],int maxline);
    void copy(char to[], char from[]);
    
    //visualizza la riga piu lunga del testo in ingresso
    main()
    {
    	int len; //lungezza della riga corrente
    	int max; // kungezza massima riconosciuta fino ora
    	char line[MAXLINE]; // riga corrente
    	char longest[MAXLINE]; // contiene la riga  piu lunga fino ora trovata
    	
    	max=0;
    	while ((len = getline(line, MAXLINE)) > 0 )
    		if (len > max ) {
    			max=len;
    			copy(longest, line);
    		}
    	if (max > 0) // c'era almeno una riga di ingresso
    		printf("%s",longest);
    	return 0;
    }
    
    //getline: legge una linea di ingresso ,la assengna a s,ne restituisce
    //la lungezza.
    
    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;
    		}
    		s[i] = '\0';
    		return i;
    }
    
    //copy: coppia la stringa 'from' sulla stringa 'to';assumendo che 'to'
    //sia sufficentemente lunga.
    void copy(char to[], char from[])
    {
    		int i;
    		
    		i=0;
    		while ((to[i] = from[i]) != '\0')
    			++i;
    }

  2. #2
    La funzione getline esiste già, ed è una funzione di libreria definita in stdio.h; rinomina la tua.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    grazie MItaly, funzionaaaaaa

  4. #4
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.