Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/18: Рейтинг темы: голосов - 18, средняя оценка - 4.83
27 / 6 / 0
Регистрация: 28.10.2010
Сообщений: 352

Реализация функции srcat.

23.01.2011, 21:13. Показов 3391. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я написал (реализовал) функцию strcat.
Вот ...
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
#include "stdafx.h"
#include <iostream>
#include <iomanip>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
/// РЕАЛИЗАЦИЯ ФУНКЦИИ strcat
 
    char s[]="Hello";
    char a[]="World!";
    int k=0;
    int l=0;
    int w;
    k=sizeof(s);
    l=sizeof(a);
    w=k+l;
    s[w];
    for (int i=0,r=0;i<w,r<k;i++,r++)
    
    {
        
        s[i]=s[r];
        if (s[r]==0)
        {
            s[i]=' ';
            i++;
            for (int d=0;d<l;d++)
            {   
                s[i]=a[d];
                if (s[i]==0)
                    break;
                else
                    i++;
            }
 
        }
    }   
    for (int i=0;i<w;i++)
    {cout <<s[i];}
return 0;
}
Но при запуске все выводит как надо, но потом возникает какая-то ошибка.
Сама компиляция идет.
Что в коде не так?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.01.2011, 21:13
Ответы с готовыми решениями:

Реализация функции печати результатов предыдущей функции
Была написана программа с функцией, находящая результат выражения с аргументом, значения которого заданы параметром со значениями и шагом....

Реализация функции c++
Программа: #include &lt;iostream&gt; using namespace std; struct Node { int data; Node* next; };

Реализация функции
Реализовать функцию ...

5
14 / 14 / 5
Регистрация: 02.03.2010
Сообщений: 29
23.01.2011, 22:51
Вот прототип функции strcat: char* strcat(char* dest; char* src). Нужно делать функцию на указателях, а здесь используються чаровые-масивы или const char*. На этом куске кода:
C++
1
2
3
4
5
6
7
8
  for (int d=0;d<l;d++)
                        {       
                                s[i]=a[d];
                                if (s[i]==0)
                                        break;
                                else
                                        i++;
                        }
масив s[] уже вышел за свои пределы(его размер 6), и все что этот кусок кода пытаеться ему присвоить улетает в далекие дали. Нужно создать отдельный указатель на char, выделить для него столько памяти, что бы хватило на оба слова + 1 символ конца строки. Ну и инициализирвоать его этими словами + не забыть поставить в конце '\0'.
0
23.01.2011, 22:57

Не по теме:

Цитата Сообщение от KOPC1886 Посмотреть сообщение
C
1
s[w];
А какую смысловую нагрузку несет 19-я строка?

0
14 / 14 / 5
Регистрация: 02.03.2010
Сообщений: 29
23.01.2011, 23:04
Это ,наверное, была попытка выделить память для обоих строк
0
Эксперт С++
 Аватар для schdub
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,894
23.01.2011, 23:07
Каноническая реализация strcat, что-то типа:
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
/*
  * Copyright (c) 1988, 1993
  *      The Regents of the University of California.  All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * are met:
  * 1. Redistributions of source code must retain the above copyright
  *    notice, this list of conditions and the following disclaimer.
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
  * 3. All advertising materials mentioning features or use of this software
  *    must display the following acknowledgement:
  *      This product includes software developed by the University of
  *      California, Berkeley and its contributors.
  * 4. Neither the name of the University nor the names of its contributors
  *    may be used to endorse or promote products derived from this software
  *    without specific prior written permission.
  *
  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
  * $FreeBSD: src/sys/libkern/strcat.c,v 1.8 2003/02/10 00:36:27 hsu Exp $
  * $DragonFly: src/sys/libkern/strcat.c,v 1.5 2004/05/05 00:17:44 hsu Exp $
  */
 
char * strcat (char * s, const char * append)
{
    char *save = s;
    for (; *s; ++s);
    while ((*s++ = *append++) != 0);
    return(save);
}
0
27 / 6 / 0
Регистрация: 28.10.2010
Сообщений: 352
25.01.2011, 17:48  [ТС]
Эмммм.... а как тогда правильно?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.01.2011, 17:48
Помогаю со студенческими работами здесь

Реализация функции last
Нужно вручную написать функцию last, и вот эти 2 списка из согласных нужно положить в локальную переменную, помоги пожалуйста (defun...

Реализация функции
Реализация функции y=\operatorname{tg}\frac{1}{x-a^{\,}}-\sqrt{2x+3a}

Реализация функции
Реализация функции y=\frac{\begin{vmatrix}x^5-\frac{\normal{z^5}}{\normal{5}}\end{vmatrix}}{\sqrt{x^2-9^{\,}}}

Реализация функции
Реализация функции (Вложение удалено)

Реализация функции
Реализация функции y=\frac{\left| x-b\right|}{2\sqrt{a^{\,}}}-\frac{\operatorname{tg}x}{b^2}


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru