С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

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

03.02.2014, 12:45. Просмотров 224. Ответов 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 работает, но при вызове из другой ф-ции - нет! Из-за чего так?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.02.2014, 12:45
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не читается аргумент функции (C++):

Вычислить значение функции аргумент которой вычисляется из другой кусочно заданной функции - C++
Решите программу то я не знаю как:hysteric: Вычислить значение y в зависимости от выбранной функции \varphi (x), аргумент которой...

Передача функции в аргумент - C++
Есть три функции: void MainMenu(); void MainMenu_MilkMenu(); bool ErrorMenu(void (*pf)()); Все прототипы находятся в...

Непонятный аргумент функции - C++
Кто-нибудь может подсказать, что принимает такая функция в качестве аргумента? void foo(int (**i)(double)) { ..... }

Безымянный аргумент функции - C++
функция принимает аргумент, но у него нет имени void f(int) { cout &lt;&lt; &quot;Hello world!&quot;; } int main() { int n =...

Локальные переменные в функции и её аргумент - C++
Привет! Пишу функцию перевода десятичного числа в текст (не обсуждайте зачем и правильно ли я делаю) Суть такова, начало функции: ...

Auto как аргумент функции - C++
Возможно ли объявить параметр функции как auto? void func(auto pt); //...

3
aLarman
643 / 564 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
Завершенные тесты: 1
03.02.2014, 12:49 #2
Цитата Сообщение от soican Посмотреть сообщение
static size_t len2 = len;
потому что это будет выполнятся 1 раз,
C++
1
2
static size_t len2 = 0;
len2 = len;
1
dzrkot
zzzZZZ...
523 / 353 / 54
Регистрация: 11.09.2013
Сообщений: 2,036
03.02.2014, 12:50 #3
попробуйте сначала 0 инициализировть её
1
soican
49 / 23 / 1
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
03.02.2014, 13:13  [ТС] #4
Я знал мне здесь помогут)))
0
03.02.2014, 13:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.02.2014, 13:13
Привет! Вот еще темы с ответами:

Аргумент функции - массив строк - C++
есть массив строк string *conns = new string; нужно сделать функцию, которая его бы изменяла void func( ??? ) {}

Опциональный ссылочный аргумент функции - C++
Некоторые аргументы функции можно сделать опциональными, просто поставив значение по умолчанию, а затем проверяя, изменилось ли оно : ...

Аргумент argv в функции main() - C++
Здравствуйте. Возникли некоторые непонимания при работе с аргументом argv и указателями в целом. Мне сказали, что, при передаче...

Класс как аргумент функции - C++
Доброго времени суток:) Набрёл на такой пример в openGL и не могу понять как он робит, подскажите. Вот описание ф-ции: void...


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

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

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