27-07-2009, 11:25
|
|
|
חבר מתאריך: 30.04.04
הודעות: 310
|
|
בעיה - error LNK2019 & error LNK1120 ב-C
שלום,
כתבתי פרוייקטiן (ב-C, לא C++) ונתקלתי בבעיית קומפילציה שאני לא מצליח לפתור. בעקרון אני מקבל את השגיאות:
Warning 1 warning C4013: 'errorSparse' undefined; assuming extern returning int
Error 3 fatal error LNK1120: 1 unresolved externals
Error 2 error LNK2019: unresolved external symbol _errorSparse referenced in function _main
בדקתי כמובן בגוגל, והיא מתקבלת כאשר משתמשים בפונקציה מהאדר שאין לה מימוש בקובץ C. אבל הפונקציה (errorSparse) ממומשת אצלי (ממש מעל ה-main).
אני מצרף באופן מופשט את האדר ואת הקובץ C:
sparse_mlpl.h
קוד:
#include <stdlib.h>
#include <stdio.h>
#include "vector.h"
#include "sparse_matrix.h"
void errorSprase(char *string, sparse_matrix_arr *matrix, VECTOR *vector1, VECTOR *vector2);
(ההאדר של וקטור וספארס מטריקס נמצאים באותה ספריה)
sparse_mlpl.c
קוד:
#include "sparse_mlpl.h"
void errorSprase(char *string, sparse_matrix_arr *matrix, VECTOR *vector1, VECTOR *vector2) {
// קוד כלשהו שלא באמת משנה, שכן הבעיה מתרחשת אפילו עם הבלוק ריק.
}
int main(void) {
sparse_matrix_arr *matrix = NULL;
VECTOR *readVec = NULL, *retVec = NULL;
if (!readSparseMatrix(stdin,&matrix))
errorSparse("ERROR allocating memory.\n", matrix, readVec, retVec);*vector2);
// more code which is also irrelevant.
}
אין סיבה שהפונקציה לא תזוהה. אין לי מושג מה הבעיה. אשמח אם מישהו יוכל לעזור. תודה.
נערך לאחרונה ע"י Darakan בתאריך 27-07-2009 בשעה 11:34.
|