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

Немного про std::string - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать программу учёта абитуриентов, описав типы Array и String http://www.cyberforum.ru/cpp/thread1777506.html
Доброго времени суток. Программа должна выводить данные абитуриентов (ФИО ID, самый распространённый балл, средний балл) в зависимости от выбора пользователя (1-фамилия, 2-оценки, 3-выход с просмотром всех данных). Программа нормально работает с вводом оценок, но если попытаться набрать фамилию из списка, то она её не находит так как почему-то "прибавляет" к ней лишние символы (результат во...
C++ Функция вывода шестнадцатеричного кода с помощью битовых полей Помогите решить задачу: "С помощью битовых полей создайте функцию для вывода шестнадцатеричного кода символа". http://www.cyberforum.ru/cpp/thread1777477.html
Действия с комплексными числами C++
Здравствуйте. Мне преподаватель дал форумулу, состоящую из комплексных чисел. Я написала программу, но на моем компьютере она не работает, выделяет строчку с stdafx.h. Можете помочь исправить ошибки если они будут? Условие: A = a1 + a2i; B = b1 + b2i; A*A = C; n*A = C; B*A = C; модуль A = C; A - B = C; A + B = C; fi = arctg (a2i/a2); Формула (A,B- комплексные вектора): (2*AB-A^2)*(3B+2A)...
Выделение памяти для указателя C++
Помогите пожалуйста разобраться в одном примере: #include "stdafx.h" #include <iostream> using namespace std; int main() { double wages = { 10000.0, 20000.0, 30000.0 }; double* pw = wages;
C++ Сравнение строк как регулярные выражения http://www.cyberforum.ru/cpp/thread1777447.html
Подскажите с виду такая простая задача. Сравнить к примеру строку "temp_" со строкой "Systemtemp_sis", если в ней присутствует "temp_", то вывести на экран.
C++ Надо переделать программу из матлаб в С++ Вот моя программа в матлаб(рабочая).Писал сам, но с++ плохо понимаю, поэтому надеюсь на вашу помощь. clear; hold off; A1=0.7; f1=500; A2=0.5; f2=1500; A3=1; f3=1000; подробнее

Показать сообщение отдельно
meJevin
 Аватар для meJevin
154 / 146 / 57
Регистрация: 18.11.2015
Сообщений: 623
Завершенные тесты: 1

Немного про std::string - C++

08.07.2016, 00:16. Просмотров 799. Ответов 34
Метки (Все метки)

Привет, читал про std::string на разных сайтах.


1. Там говорят, С++ 11 гарантирует, что std::string будет stored contiguously in memory. В этом я не сомневаюсь, но каким еще образом можно в памяти хранить std::string?

2. Говорят, что std::string на самом деле имеет null-terminator на конце. Это так? Вроде да, я в этом немного убедился в своей студии. Сделал четыре std::string'a, через цикл от 0 до size()+1 вывел все представления их символов в виде int, и да, последний символ был '\0' (в int виде просто 0).

Но все равно, некоторые говорят, что если мы имеем std::string str("hello"); и пытаемся получить доступ к желанному null-terminator'у, у нас может быть UB. Т.е. писать такое: std::cout << (int)str[str.size()] << std::endl; не стоит. Правда может быть UB?

3. Что под капотом у std::string на самом деле? Можете объяснить простым языком, если не трудно?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru