Zdravim,
potřeboval bych pomoct s indexováním prvků při vkládání do spojového seznamu.
A pak ještě pomoct s rozběhem jednotlivých modulů v C.
tady jsou zdrojáky pro indexování při vkládání parametrů:
#ifndef FUNKCE_H
#define FUNKCE_H
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <malloc.h>
#include <string.h>
#include "katalog.h"
#define CESTA "/home/teodor/Plocha/Parametry_exoplanet.txt"                     // definovana cesta ke ctenemu souboru
#define ROZSAH 100                                                              // Staticka makro konstanta pro velikost nazvu parametru
#define ROZSAH_RADKY 300                                                        // Staticka makro konstat pro velikost radky
void menu();                                                                                                                           // Prototyp fce pro menu
void smaz_katalog(KATALOG **pps);                                                                                                      // Prototyp fce pro smazani katalogu
void smaz_soubor();                                                                                                                    // Prototyp fce pro smazani souboru
void vkladani_parametru(KATALOG **pps, char *parametr_1, long int parametr_2, long int parametr_3, long int parametr_4, int index);         // Prototyp fce pro vkladani parametru exoplanet 
void hledani_parametru(const KATALOG *pps, int index);                                                                                 // Prototyp fce pro mazani jednotlivych parametru
int zapis_do_souboru(char *parametr_1, long int parametr_2, long int parametr_3, long int parametr_4);                                    // Prototyp fce pro ukladani do souboru
int cteni_ze_souboru();                                                                                                                  // Prototyp fce pro cteni ze souboru                                                                                      
#endif 
#ifndef KATALOG_H
#define KATALOG_H
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <malloc.h>
#include <string.h>
#include "funkce.h"
#define ROZSAH_NAZVU 100
typedef struct katalog {                                            // Struktura prvku
    char nazev[ROZSAH_NAZVU];                                            // Prvek nazvu exoplanety
    int hmotnost;                                                   // Prvek hmotnosti exoplanety
    int jasnost;                                                    // Prvek jasnosti exoplanety
    int radial_rychlost;                                            // Prvek radialni rychlosti exoplanety
    
    struct katalog *nasledujici;                                    // Pointer struktury katalog na nasledujici prvek
} KATALOG;
#endif 
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <malloc.h>
#include <string.h>
#include "funkce.h"
#include "katalog.h"
void vkladani_parametru(KATALOG **pps, char *parametr_1,long int parametr_2, long int parametr_3, long int parametr_4, int index) {
    
    KATALOG *ps;                                                                            // Pointer na strukturu katalog
       
    int idx = 0;                                                                            // pomocna promenna k porovnavani indexu od 0
    
     
    
    if(idx == index) {                                                                      // Porovnani parametru s hodnotou indexu
        
        ps = (KATALOG *) malloc(sizeof(KATALOG));                                           // Osetreni dynamickeho prideleni pameti
    
                if(ps == NULL) {   
        
                    fputs("Chybna alokace pameti!\n", stderr);                              // Pokud se neprideli pamet, vypise se chybove hlaseni
                                                                                            // a na chybovy vystup stderr 
        return;    
        
    }
        
        if(ps) {
            
                                                                                     // Vsechny parametry exoplanety budou mit stejny index pro hledani
                 strcpy(ps->nazev, parametr_1);                                      // Pridani prvku do spoj. seznamu
                 ps->nasledujici;                                                    // Posun na dalsi prvek v rade
                 ps->hmotnost = parametr_2;                                          //            -//-
                 ps->nasledujici;    
                 ps->jasnost = parametr_3;
                 ps->nasledujici;                                                                 
                 ps->radial_rychlost = parametr_4 ;
               //  ps->nasledujici = NULL;                                             // Ukazuje na konec seznamu
              
   
                 *pps = ps;      
                   
            
        }      
         
    }
    
    
};
K té modulárnosti...mám implementaci jednotlivých fcí v .c souborech, třeba cteni_ze_souboru.c, v NetBenas se to přeloží, ale program nedělá to co má. Asi jsem někde něco neprovázal nebo nevim, ale když to udělám prasácky a výkonný kód nacpu do headers tak to běží tak jak má. Stejně když ty jednotlivé moduly kompiluji přes gcc -wall, přeloží se to, ale program nic nedělá.