papa_john Δημοσ. 21 Μαρτίου 2013 Δημοσ. 21 Μαρτίου 2013 Καλησπέρα , εχω μια ασκηση για τη σχολη μου και εχω μια απορια, ο καθηγητης μας εχει δωσει 2 αρχεια.c . Το ένα ειναι η main και το αλλο ειναι μια συναρτηση που δημιουργει νέους κομβους σε ένα δευτερο αρχειο c . Tο πρωτοτυπο της συναρτησης ειναι μεσα στην main αλλα οταν παω να καλεσω την συναρτησημε βγαζει μηνυμα [Linker error] undefined reference to `insertNodeIntoList' .Πως μπορω να συνδεσω τα 2 αρχεια? Ευχαρηστω!!!
Star_Light Δημοσ. 21 Μαρτίου 2013 Δημοσ. 21 Μαρτίου 2013 Λογικα η κληση της συνάρτησης θα ειναι στην main και ο ορισμος της στο αλλο αρχειο ... βάλε τους κωδικες των αρχειων
papa_john Δημοσ. 21 Μαρτίου 2013 Μέλος Δημοσ. 21 Μαρτίου 2013 H MAIN #include <stdio.h> #include "header.h" int concatenateSortedLists(List *, List *, List *); int insertNodeIntoList(List *); ListNode * generateNewListNode(void); int main(int argc, char * argv[]) { List * list1; int i; int size1,size2; printf("Insert the size of list1: "); scanf("%d",&size1); for(i=0;i<size1;i++) { generateNewListNode(); } printf("Insert the size of list2: "); scanf("%d",&size2); system("PAUSE"); return 0; } H HEADER typedef struct listNode pointer; typedef struct listNode { int datum; pointer * next; pointer * previous; }ListNode; typedef struct list { int numberOfNodesInList; pointer * head; pointer * tail; }List; H ΣΥΝΑΡΤΗΣΗ #include <malloc.h> #include <math.h> #include "header.h" ListNode * generateNewListNode(void) { ListNode * newNode = (ListNode *) NULL; newNode = (ListNode *) malloc(sizeof(ListNode)); newNode->datum = ((int) ((rand() * 1235 ) * (rand() * 100) )) % 256; newNode->next = (ListNode *) NULL; newNode->previous = (ListNode *) NULL; return newNode; }
imitheos Δημοσ. 21 Μαρτίου 2013 Δημοσ. 21 Μαρτίου 2013 Ποιο IDE χρησιμοποιείτε ? Στο project που θα κάνεις θα εισάγεις και τα δύο αρχεία. Αν κάνετε χειροκίνητα compile τα αρχεία πχ με gcc, τότε κατά το linking δώσε και τα δύο αρχεία πχ gcc -o arxeio.exe main.c mitsos.c Edit: Έχεις 2 prototypes (concatenateSortedLists και insertNodeIntoList) με τις συναρτήσεις να λείπουν. Το πρόγραμμα της main δεν τις χρησιμοποιεί όμως. Μήπως ο σκοπός της άσκησης είναι να τις γράψεις εσύ αυτές τις συναρτήσεις ?
papa_john Δημοσ. 21 Μαρτίου 2013 Μέλος Δημοσ. 21 Μαρτίου 2013 Χρησιμοποιω το dev c++ και δεν ξερω πως να εισαγω και τα 3 αρχεια μαζι σε ενα project
Star_Light Δημοσ. 21 Μαρτίου 2013 Δημοσ. 21 Μαρτίου 2013 Χρησιμοποιω το dev c++ και δεν ξερω πως να εισαγω και τα 3 αρχεια μαζι σε ενα project Για δες αυτο σε βοηθάει ? http://www.youtube.com/watch?v=IlvyDfQ8Nu4
papa_john Δημοσ. 21 Μαρτίου 2013 Μέλος Δημοσ. 21 Μαρτίου 2013 Οk το βρήκα , ευχαριστώ για την βοήθεια!!! 1
Timonkaipumpa Δημοσ. 21 Μαρτίου 2013 Δημοσ. 21 Μαρτίου 2013 Καταρχάς, φύγε από το DevC++.... Προτιμότερο είναι το Lcc. Εάν θες κάτι πιο νέο, δοκίμασε NetBeans ή Code::Blocks.
Star_Light Δημοσ. 21 Μαρτίου 2013 Δημοσ. 21 Μαρτίου 2013 Οk το βρήκα , ευχαριστώ για την βοήθεια!!! Το βιντεάκι σε βοηθησε ?
imitheos Δημοσ. 21 Μαρτίου 2013 Δημοσ. 21 Μαρτίου 2013 Καταρχάς, φύγε από το DevC++.... Προτιμότερο είναι το Lcc. Εάν θες κάτι πιο νέο, δοκίμασε NetBeans ή Code::Blocks. +1 Ή ακόμη καλύτερα CodeLite. Ελαφρύ, με απείρως περισσότερα features από ό,τι θα χρειαστεί στη σχολή, και με εύκολο στήσιμο μια και ο installer του εγκαθιστά και τον compiler οπότε δεν χρειάζεται να πρηχτείς.
migf1 Δημοσ. 21 Μαρτίου 2013 Δημοσ. 21 Μαρτίου 2013 Orwell Dev-C++ είναι το σύγχρονο & εξελισσόμενο fork του Dev-C++, το οποίο είναι απείρως βελτιωμένο σε όλους τους τομείς από το αρχικό, και δεν θα χρειαστεί να ξαναμάθεις από την αρχή το περιβάλλον εργασίας. Σου έχει έτοιμους με την εγκατάσταση και 2 εκδοχές του mingw toolchain, μια για 32μπιτα και μια για 64μπιτα Windows, σεταρισμένους για χρήση out of the box. Αν σκοπεύεις όμως να ασχοληθείς αργότερα πιο σοβαρά με C/C++ programming, θα σου προτείνω κι εγώ ότι κι ο Timon: Code:Blocks ή NetBeans. ΥΓ. Btw, μακριά από LCC... έχει πολλές ασυμβατότητες. 1000 φορές καλύτερα Pelles-C. 1
Timonkaipumpa Δημοσ. 21 Μαρτίου 2013 Δημοσ. 21 Μαρτίου 2013 Really για το Lcc; Δεν το γνώριζα. Τι ασυμβατότητες;
migf1 Δημοσ. 21 Μαρτίου 2013 Δημοσ. 21 Μαρτίου 2013 Δεν θυμάμαι απέξω Timon, αλλά επειδή όπως θα θυμάσαι αρέσκομαι να κάνω compile κώδικές σε τουλάχιστον 3 compilers (και όσους έχω κατά καιρούς ποστάρει εδώ αλλά και σε άλλους που τους θέλαμε συμβατούς σε διάφορες πλατφόρμες) ο LCC έχει θέματα. Νομίζω περισσότερο με τα C99 features, αλλά σημείωσε πως μιλάω για τον lcc-win32 (ο σκέτος lcc είναι πολύ παλιός έτσι κι αλλιώς αν δεν με απατάει η μνήμη μου). Προβλήματα, αλλά σαφώς λιγότερα έχει και η έκδοση 7 της Pelles-C (ειδικά στο optimization αν θυμάμαι καλά).
Timonkaipumpa Δημοσ. 22 Μαρτίου 2013 Δημοσ. 22 Μαρτίου 2013 ΟΚ! Δεν το ήξερα... και η αλήθεια είναι ότι έχω να πιάσω Lcc εδώ και 3 χρόνια. Αλλά, θυμάμαι, ήταν ένα περιβάλλον που μου άρεσε πάρα πολύ και γινόταν εύκολα πολύ strict.. κάπου στις ρυθμίσεις είχε απλά ένα check box για ANSI C. Γενικά, θυμάμαι, μου άρεσε πολύ η διαχείριση των παραθύρων... ήταν modal ενώ το κεντρικό έμενε πάντα ON σαν background. Anyway... thnx for the info!
migf1 Δημοσ. 22 Μαρτίου 2013 Δημοσ. 22 Μαρτίου 2013 Τίποτα ρε συ. Πάντως κι εγώ έχω καιρό να τον αναβαθμισω, ίσως έχει βγει νέα έκδοση και να είναι καλύτερη. Εμένα μου άρεσε επίσης ότι σου βγάζει τα segfaults σε alert-box πριν κρασάσει, μαζί με info ΥΓ. Άσχετο, έχω να προγραμματίσω σε C μήνες... παλεύω με PHP σε Joomla και Wordpress τελευταία.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα