Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
mozart_45
1 / 1 / 5
Регистрация: 21.07.2015
Сообщений: 42
#1

Объясните код функции - C++

24.07.2015, 07:55. Просмотров 181. Ответов 2
Метки нет (Все метки)

Всем Привет Пожалуйста Объясните эту функцию



C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
void String(char *str,const char *str2)
{
    int i(0);
    int j(0);
 
 
    while(1)
    {
        if(str[i] !='\0')
        {
            i++;
            continue;
        }
 
        if(str2[j] !='\0')
        {
            str[i]=str2[j];
            i++;j++;
        }
        else{str[i]='\0';return;}
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.07.2015, 07:55
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Объясните код функции (C++):

Объясните код
Можете объяснить, как работает эта программа? Я понимаю только то, что в...

Объясните код
как работает этот код? опишите, пожалуйста void Comb(int m, int l) { if...

Объясните код
Добрый день. Закомментируйте код программы пожалуйста. Не могу разобраться в...

Объясните код
Есть задача из книги. Я думаю условие, в данной ситуации, скидывать не надо. ...

объясните код
не понятно что означает это int*pointer; pointer=new int Добавлено...

Объясните код
Обьясните что обозначают и что делают различные команды и знаки в следующей...

2
zss
Модератор
Эксперт С++
6959 / 6521 / 4139
Регистрация: 18.12.2011
Сообщений: 17,209
Завершенные тесты: 1
24.07.2015, 08:10 #2
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
void String(char *str,const char *str2)
{
// функции передаются адреса двух текстовых массивов
    int i(0);
    int j(0);
    while(1)
    {
        if(str[i] !='\0')
        {
            i++;
            continue;
        } // находим конец первой строки
 
        if(str2[j] !='\0')
        {
            str[i]=str2[j]; // переписываем символы второй строки в конец первой
            i++;j++;
        }
      else
        {
             str[i]='\0'; // когда 2 строка кончилась записываем признак конца в первую строку
             return; // завершаем функцию
         }
      
    }
}
В целом функция делает объединение строк, т.е. то же самое, что и стандартная strcat из string.h
Можно чуток оптимизировать
C++
1
2
3
4
5
6
7
8
9
10
11
12
void strcat(char *str,const char *str2)
{
    int i=0,j=0;
    while(str[i++] )
         ;   // находим конец первой строки
     while(str2[j])
     {
        str[i]=str2[j]; // переписываем символы второй строки в конец первой
        i++;j++;
    }
    str[i]=0;
}
1
mozart_45
1 / 1 / 5
Регистрация: 21.07.2015
Сообщений: 42
24.07.2015, 10:01  [ТС] #3
СПАСИБО
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.07.2015, 10:01
Привет! Вот еще темы с решениями:

Объясните код
Пожалуйста объясните что да как в этом коде #define MAXLEN sizeof(int) *...

Объясните код
#include <iostream.h> #include <string> int main() { const std::string...

Объясните код
Если честно я не знаю как написать программу, пожалуйста помогите. Опишите код...

Объясните код
Приветствую форумчане! Нуждаюсь в Вашей помощи! Помогите пожалуйста разобраться...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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