Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Мотороллер
428 / 240 / 37
Регистрация: 05.08.2013
Сообщений: 1,647
Завершенные тесты: 1
#1

Линкер ругается на функцию - C++

23.05.2014, 22:45. Просмотров 287. Ответов 1
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
// laba7evteev.cpp: определяет можно ли из слов первой строки составить вторую
//
 
#include "stdafx.h"
#include <string.h>
 
int strToWords(char *str, char words[40][21]);
int markWords ( const char word[21],const char words[][21], int nWords,int isEqual[40]);
 
int _tmain(int argc, _TCHAR* argv[])
{
    char str1[81], str2[81]; //сами строки
    char words1[40][21]={""}, words2[40][21]={""};  //сюда будут помещены слова из строк
    int isEqual[40]={0};
    int word_count1, word_count2;
 
    //вводим строки
    gets(str1);
    gets(str2);
    if (strlen(str1)==0 || strlen(str2) == 0)
    {
        printf("error");
        return 0;
    }
    //разбиваем на слова
    word_count1=strToWords(str1, words1);
    word_count2=strToWords(str2, words2);
    
    if (word_count1 == 0 || word_count2 == 0)
    {
        printf("error");
        return 0;
    }
 
    //ищем слова из str2 в str1
    for (int i=0; i<word_count1; i++)
        if (markWords(words1[i], words2, word_count2, isEqual) < 0)
        {
            printf("0");
            getchar();
            return 0;
        }
    //вывод сообщения в зависимости от ok
    printf("1");
    getchar();
    return 0;
}
 
int strToWords(const char str[81], char words[40][21])
{
//процедура получает все слова из переданной строки и записывает их в массив words
//str - строка которую надо разбить на слова
//words - массив куда помещать слова
    int word_len;  //длинна слова
    int i=0;     //номер слова в массиве
    while(*str)
    {
        str+=strspn(str, "! ;:?-.,\"");  //пропускаем разделители
        word_len=strcspn(str, "! ;:?-.,\"");    //узнаем длинну слова
        if (word_len)
        {
            strncpy(words[i],str, word_len);        //копируем word_len байт в массив слов
            words[i++][word_len]=0;                 //делаем ASCIIZ строку. 
            str+=word_len;                          //перемещаемся дальше по строке
        }
    }
    return i;
}
 
int markWords ( const char word[21],const char words[40][21], int nWords,int isEqual[40])
{
    int i, count=0;
    for (i=0; i<nWords; i++)
        if (!strcmp(word, words[i]))
            isEqual[count++]=1;
    return count;
}
Код
Ошибка	4	error LNK2019: ссылка на неразрешенный внешний символ "int __cdecl strToWords(char *,char (* const)[21])" (?strToWords@@YAHPADQAY0BF@D@Z) в функции _wmain	c:\Users\motoroller\documents\visual studio 2010\Projects\laba8_evteev\laba8_evteev\laba8_evteev.obj
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2014, 22:45     Линкер ругается на функцию
Посмотрите здесь:

Ругается линкер в ALXGridVer1_3 - C++
Привет! Установил на форму этот грид, все нормал в Debug, а в Release пошло ругается линкер может кто знает в чем трабл?

Линкер ругается | #include <iostream> - C++
При подключении заголовочного файла: #include &lt;iostream&gt; получаю ошибки линкера: main.cpp:(.text+0x65): undefined reference to...

Ругается на функцию - C++
В чём тут ошибка? #include &lt;iostream&gt; #include &lt;string&gt; const int n=3;

Ругается на функцию в функции - C++
#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;time.h&gt; #include &lt;math.h&gt; #define A 10 #define B -10 int Scanf(int Array,int...

Компилятор ругается на функцию strncat - C++
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; long p,x,i,j,k,d,l; char t,s; void prefix() {

Почему компилятор ругается на математическую функцию? - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;cmath&gt; using namespace std; class X { double *x, *y,...

Почему Visual Studio 2015 ругается на функцию s.copy ? - C++
Уважаемые товарищи, помогите разобраться в чём проблема? Мне нужно просто из переменной типа string скопировать данные в информационное...

Ругается компилятор, если создаю функцию за пределами главного файла! - C++
Вот что пишет компилятор 1&gt;------ Построение начато: проект: nasledovatlenostj, Конфигурация: Debug Win32 ------ 1&gt;nasledie1.obj :...

Multiple definition: почему компилятор ругается на единственную функцию, используемую в обоих source-файлах? - C++
Пихаю хедер в 2 сурсца разных классов. Компилятор ругается на единственную функцию, которую я использую в обоих сурсцах. #ifndef LIB ...

Линкер и компиллятор - C++
только не смейтесь, не умею толком работать с данными инструментами. среда VS2010. проекты скомпилированные из нее при запуске на других...

Ищу легкий линкер - C++
Здравствуйте. Задача такая: человеку на рабочем месте нужна простенькая консольная программа. Функционал - ввод/вывод в консоль,...

Ругается на If - C++
#include&lt;iostream&gt; using std::cin; using std::cout; using std::endl; int main() { cout&lt;&lt;&quot;Введите число:\n&quot;; int age; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
13052 / 7315 / 814
Регистрация: 27.09.2012
Сообщений: 18,052
Записей в блоге: 3
Завершенные тесты: 1
23.05.2014, 22:47     Линкер ругается на функцию #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
int strToWords(char *str, char words[40][21]);
//...
int strToWords(const char str[81], char words[40][21])
{
//...
}
найдите отличия
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru