1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891

Размер символьного массива

14.06.2012, 10:43. Показов 22092. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всех приветствую!

Прошу простить, что тревожу столь банальными вопросами, но сам додумать не могу...

Задан массив:
C++
1
2
char *a = new char;
a="qwnsjfnsdjfnsfsf;ajsdnf";
Необходимо узнать не длину этой строки, а сколько байт занимает данный массив в памяти. strlen() вернет длину, которая будет эквивалентна размеру данного массива, т.к. 1 char = 1 байт, это понятно. Но как обратиться именно к размеру в памяти?

На мой глупый ум приходит только:

C++
1
size_t n=sizeof(*a)*strlen(a);
Подскажите, пожалуйста...
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.06.2012, 10:43
Ответы с готовыми решениями:

Почему размер символьного массива должен быть больше на 1 символ, а не на 2?
Привет! Пока читал учебник Шилдта, возник вопрос: Почему Герберт Шилдт говорит, что следует задать длину на один символ больше, хотя...

Заполнение массива значениями из символьного массива
есть массив символов char z;есть целочисленный массив int b;каждый символ z это цифра 0-9 нужно в b записать символ z(не код символа а...

Обработка символьного массива
Задание по вычислительно

24
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
24.06.2012, 16:37  [ТС]
Студворк — интернет-сервис помощи студентам
Ребят, а объясните, пожалуйста, каким образом в данном примере резервируется место под строку, которая будет вводиться?

C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    char *a;
    cin >> a;
    cout << endl << a << endl;
    system("pause");
    return 0;
}
- я специально не задаю размер строки, ввожу приличный текст и полностью получаю его в ответ, не нарываясь ни на какой AV - почему?
0
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
24.06.2012, 22:42
Цитата Сообщение от The_Immortal Посмотреть сообщение
не нарываясь ни на какой AV
это называется "не повезло"
1
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
24.06.2012, 23:28  [ТС]
Jupiter, т.е. в теории я рано или поздно таким образом нарвусь на закрытый блок памяти, так?
0
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
24.06.2012, 23:37
именно так
1
1569 / 505 / 48
Регистрация: 04.04.2009
Сообщений: 1,891
24.06.2012, 23:45  [ТС]
Jupiter, блин, сколько не пытаюсь - не получается )) Просто верить - одно, а на практике ощутить - другое...
Ну ладно, замнем для ясности
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.06.2012, 23:45
Помогаю со студенческими работами здесь

Сортировка символьного массива
Помогите пожалуйста написать прогу на C++!!! Нужно отортировать матрицу из симовлов по первому столбцу, в случае если есть повторяющиеся...

Заполнение символьного массива
Когда ввожу символ все крашиться. ¯ \ _ (ツ) _ / ¯ Помогите пофиксить, пожалуйста. char* hand; char* arr = {}; ...

Обработка символьного массива
Итак, задание: Без использования конструкции string написать программу ввода и вывода необходимого текста с клавиатуры. Ввод...

Вывод символьного массива
Не выводит все что дальше пробела ( Как пофиксить? И чем это обусловлено ? char text=&quot; &quot;; cout&lt;&lt;&quot;enter...

Перебор символьного массива
Помогите, не могу написать прграмму которая добавляет символ. Например: вводим D:\myfolder\secondfolder\ , а выводим...


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

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

Новые блоги и статьи
[golang] Breadth-First Search
alhaos 19.05.2026
BFS (Breadth-First Search) — это базовый алгоритм обхода графа в ширину, который поуровнево исследует все связанные вершины. Он начинает с выбранной точки и проверяет всех соседей, прежде чем. . .
[golang] Алгоритм «Хак Госпера»
alhaos 17.05.2026
Алгоритм «Хак Госпера» Хак Госпера (Gosper's Hack) — алгоритм нахождения следующего по величине числа с тем же количеством установленных бит. Придуман Биллом Госпером в 1970-х, опубликован в. . .
Рисование бинарного древа до 6-го колена на js, svg.
russiannick 17.05.2026
<svg width="335" height="240" viewBox="0 0 335 240" fill="#e5e1bb"> <style> <!]> </ style> <g id="bush"> </ g> </ svg> function fn(){ let rost;/ / высота древа let xx=165,yy=210,w=256;
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов, содержащихся в реализации модуля. По-умолчанию все члены модуля доступны: module Foo let x = 10 let boo () = printfn "boo" . . .
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции. <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible". . .
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru