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

Могут ли две string разделять одни данные? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Необработанное исключение http://www.cyberforum.ru/cpp-beginners/thread1102682.html
Здравствуйте. Нужно добавить в готовый класс свои функции из предыдущих работ. Все добавил, но при вызове функции "cdd" вылезает ошибка "Необработанное исключение в "0x00f12afb" в "eta.exe": 0xC0000005: Нарушение прав доступа при чтении "0xfdfdfdfd".". Попробовал запустить старое задание, из которого я взял код и добавил сюда - тоже не работает. Хотя на университетских компьютерах все работало....
C++ Функция с неограниченным количеством аргументов Вообщем проблема: написал функцию неограниченным количеством аргументов под виндой (компилятор mingw) все работает как часы, но под unix (компилятор gcc) начинаются проблемы, а точнее правильно берет только 1 аргумент, а остальные берет от балды (-1633125008 327571911603200 32675 1900239536 и.т.д). Ребят помогите, что и где я накосячил? http://www.cyberforum.ru/cpp-beginners/thread1102676.html
Найти сумму отрицательных элементов расположенных на главной диагонали матрицы C++
Задана матрица A 1.Найти сумму отрицательных элементов расположенных на главной диагонали 2.Найти максимальный элемент среди положительных элементов 3 строки 4 столбца и его местоположение 3.заменить найденный максимальный элемент на сумму положительных элементов 2 строки.
C++ Можно ли объявить дружественную функцию как шаблон?
Так всё работает: template<class T> class random { /*всячина*/ public: friend void function(random<int>&); /*всячина*/
C++ Задача : Обход шахматной доски конем С++ рекурсия http://www.cyberforum.ru/cpp-beginners/thread1102661.html
Доброго времени суток ! Есть задача , обойти всю шахматную доску фигурой конь , не наступая на одну и туже клетку 2 раза , решить ее нужно с помощью рекурсии. По примеру этого кода , нужно написать программу. Выручайте ! #include <Windows.h> #include <iostream> using namespace std; const int Y = 20, X = 50; void fill(int a, int y, int x); void drawField(int a);
C++ Цикл For. Вычислить значение функции #include <iostream> #include <conio.h> #include <math.h> using namespace std; int main () { float x_start=1.0,x_step=0.3,x_end=2.5; float a=-1.5,b=2.0,c=3.0,d=4.0; подробнее

Показать сообщение отдельно
zss
Модератор
Эксперт С++
 Аватар для zss
5942 / 5547 / 1783
Регистрация: 18.12.2011
Сообщений: 14,156
Завершенные тесты: 1
22.02.2014, 18:40     Могут ли две string разделять одни данные?
string - Это STL контейнерный класс, который предназначен для работы со строками.
Соответственно, если хотите получать доступ к данным по адресу,
то используйте итераторы.
Пример из MS help:
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
#include <string>
#include <iostream>
using namespace std;
 
int main( ) 
{
   string str1 ( "No way out." ), str2;
   basic_string <char>::iterator strp_Iter, str1_Iter, str2_Iter;
   basic_string <char>::const_iterator str1_cIter;
 
   str1_Iter = str1.begin ( );
   cout << "The first character of the string str1 is: " 
        << *str1_Iter << endl;
   cout << "The full original string str1 is: " << str1 << endl;
 
   // The dereferenced iterator can be used to modify a character
   *str1_Iter = 'G';
   cout << "The first character of the modified str1 is now: " 
        << *str1_Iter << endl;
   cout << "The full modified string str1 is now: " << str1 << endl;
 
   // The following line would be an error because iterator is const
   // *str1_cIter = 'g';
 
   // For an empty string, begin is equivalent to end
   if (  str2.begin ( ) == str2.end ( ) )
      cout << "The string str2 is empty." << endl;
   else
      cout << "The string str2 is not empty." << endl;
}
 
Текущее время: 15:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru