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

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

Войти
Регистрация
Восстановить пароль
 
soican
49 / 23 / 1
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
#1

Не читается аргумент функции - C++

03.02.2014, 12:45. Просмотров 204. Ответов 3
Метки нет (Все метки)

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 recursReverse(char* str, size_t len)
{   static size_t len2 = len;
    while (len2 > 1)
    { std::swap(*str, *(str + len2 - 1) );
      str++;
      len2 -= 2;
      recursReverse(str, len2);
    }
}
void SwapStringParts(char* str, size_t lenA, size_t lenB)
{ static size_t lenAB = lenA + lenB; 
  recursReverse(str, lenAB ); // recursReverse(str, lenA+lenB ) тоже пробовал
 // recursReverse(str, len1);
 // recursReverse(str + len1, len2);
}
int main()
{
    char test[] = "0123456789";
    std::cout << test << std::endl;
    size_t len = strlen(test);
    recursReverse(test, len);
    std::cout << test << std::endl;
    SwapStringParts(test, 2, 8 );
    std::cout << test << std::endl;
    return 0;
}
Так вот при проходке дебагером, когда ф-ция SwapStringParts вызывает recursReverse, то выражение static size_t len2 = len; не присваивает len2 значение 10(в данном случае)
Я в ауте, полнейшем. Сама recursReverse работает, но при вызове из другой ф-ции - нет! Из-за чего так?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.02.2014, 12:45     Не читается аргумент функции
Посмотрите здесь:

Класс как аргумент функции C++
C++ Аргумент функции - массив строк
C++ Локальные переменные в функции и её аргумент
Безымянный аргумент функции C++
C++ Аргумент функции - указатель на метод класса
C++ Передача функции в аргумент
C++ Произвольный объект как аргумент функции
Опциональный ссылочный аргумент функции C++
C++ Auto как аргумент функции
C++ аргумент в виде шаблонной функции
Как сделать ввод в аргумент(ы) функции? C++
Аргумент argv в функции main() C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
aLarman
641 / 562 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
03.02.2014, 12:49     Не читается аргумент функции #2
Цитата Сообщение от soican Посмотреть сообщение
static size_t len2 = len;
потому что это будет выполнятся 1 раз,
C++
1
2
static size_t len2 = 0;
len2 = len;
dzrkot
zzzZZZ...
518 / 348 / 53
Регистрация: 11.09.2013
Сообщений: 1,995
03.02.2014, 12:50     Не читается аргумент функции #3
попробуйте сначала 0 инициализировть её
soican
49 / 23 / 1
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
03.02.2014, 13:13  [ТС]     Не читается аргумент функции #4
Я знал мне здесь помогут)))
Yandex
Объявления
03.02.2014, 13:13     Не читается аргумент функции
Ответ Создать тему
Опции темы

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