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

Что лучше для изучения c++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Шаблоны и списки http://www.cyberforum.ru/cpp-beginners/thread396478.html
Помогите, пожалуйста, написать две программы: 1. Создать класс Wisestring, объекты которого могли бы присвоить себе значение и по запросу выводили бы информацию о себе на монитор. 2. Создать список, в который включаются и из которого изымаются сами объекты, а не указатели на них. Список должен работать для класса Х, в котором определены x::x(x&), x::~x() и x::operator=(x&).
C++ Проблема со строками Добрый день. Нужна Ваша помощь в решении проблемы с задачкой по строкам. Ато сиджу несколько дней и догнать немогу С Клавиатуры вводим текстовый рядок. Написать программу, которая выводит на экран слова что начинаются с согласных литер. удаляет все слова , которые начинаются и заканчиваются на одну и ту литеру. Спасибо. http://www.cyberforum.ru/cpp-beginners/thread396459.html
Как передать параметр в собственный манипулятор с параметром? C++
Ребята, вопрос, вот задача: Создать манипулятор endp(n), задающим условие перехода на новую страницу: если счетчик строк в функции-манипуляторе имеет значение большее заданного n, то осуществить переход на новую страницу. Вот мой код: #include<iostream> #include<iomanip> #include<conio.h>
Перегрузка оператора () C++
Привет всем помогите придумать способ реализаци следущей задачи: есть класс симметричная матрица: class Matrix { public: Matrix(unsigned int SizeOfMatrix); virtual ~Matrix();
C++ программа работает не на всех компах http://www.cyberforum.ru/cpp-beginners/thread396445.html
Кто знает почему программа на одних компах работает на других нет? в чем может быть проблема? #include <windows.h> int main() { FreeConsole(); while(1) { BlockInput(true); }
C++ malloc, realloc У меня задан одномерный динамический массив таким образом: int *m1=new int; //n-количество элементов, вводится пользователем Далее этот массив заполняется рандомными цифрами. --- Из этого массива цифры удовлетворяющие условию должны копироваться в другой массив. Но сколько будет таких цифер неизвестно (и будут ли вообще такие). Получается, что при нахождении цифры необходимо выделять место... подробнее

Показать сообщение отдельно
Сыроежка
Заблокирован
03.12.2011, 16:24     Что лучше для изучения c++
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
0. Я специально пронумеровал, чтобы было понятно, на какую фразу я отвечаю.
1. Это - грубый и хамский наезд - переход на личности. Я вам такого повода не давал.
2. Цитирую Кернигана и Ричи (2001 года, 3-е издание, исправленное и дополненное),
параграф 5.7, стр. 147, второе предложение:

Строго говоря, в Си двумерный массив рассматривается как одномерный массив, каждый элемент которого - также массив.
Будете спорить с Ричи?
3. Опять переход на личности. Причем безосновательный.

Надо сохранять, как говорят японцы, лицо, даже если вы безнадежно проигрываете .
Проблема в том, что я дискуссирую не с Ритчи, а с вами, который не знает языков С/С++ и при этом выдергивает фразы из книги Ритчи, не понимая их смысла.
Давайте разбираться с тем, что вы цитируете без понимания смысла. Во-первых, у меня нет данной книги 2001 года, а есть ее издание 2006 года. И в этой книге фраза звучит несколько по иному "В языке С двумерный массив - это фактически одномерный массив, каждый элемент которого в свою очередь является массивом". О чем здесь говорится? О размещении в памяти двумерного массива. Но самое главное здесь ясно сказано о двумерном массиве. Когда чего-то в языке нет. то об этом не говорят. Какой смысл использовать некорректный термин "двумерный массив", если его в С просто нет? Такая простая мысль вам в голову не приходила?! А что тогда делать с трехмерными масивами, четырехмерными массивами и т.д.? Денис Ритчи для таких, как вы, которые не в состоянии самостоятельно разобраться в вопросе подробно объясняет физическую архитектуру размещения в памяти многомерных массивов. Я вам уже сказал, что в одномерном пространстве, которым является память компьютера многомерные массивы можно только так и расположить. Разве лишь заменив линейное расположение по строкам, расположением по столбцам массива.
Поэтому вы цитируете Дениса Ритчи, а не понимаете. что он пишет. Но это уже вопросы не языка С, а вашего интеллектуального уровня.
Что касается языка С, то в этой же книге есть приложение А "Справочное руководство по языку С", в котором в параграфе Ф.8.6.2 "Описатели массивов" говорится о многомерных массивах и приводится в частности пример трехмерного массива

static int x3d[3][5][7];

Обратите на название идентификатора массива x3d. Значете, что оно означает? Оно означает, чтто массив имеет 3 размерности (d - это от английского слова dimension)
И к этому примеру в книжке дан поясняющий текст (опять-таки заметьте, это Денис Ритчи писал, на которого вы так безграмотно ссылаетесь!):

"Аналогично, следующее объявление создает статический трехмерный массив целых чисел размером 3х5х7.

В отношении же вас проблема связана не с языком С, а с вашим уровнем интеллекта. Просто задайтесь вопросом, если в С нет многомерных массивов, то что означает запись

x3d[3][5][7] ? Спросите любого ребенка, он видет разницу между записью x3d[105] и записью x3d[3][5][7] ? А после того, как ребенок вам ответит, то задайте уже себе вопрос: а зачем придумана запись x3d[3][5][7] если можно записать x3d[105] ? Значит, наверное, первая форма записи несет в себе некоторую смысловую нагрузку, которая отличает ее от второй формы записи, не так ли?

Но, честно признаюсь, мне вообще смешно, что взрослому человеку приходится объяснять банальные вещи на уровне ребенка! В конце-концов, есть стандарт языка С, в котором говорится о многомерных массивах и утверждается, что int x3d[3][5][7] [/B] и int x3d[105] - это два разных типа, где первый тип - это тип трехмерного массива (заметьте, не одномерного и даже не двумерного, а трехмерного!), а второй тип - это тип одномерного массива.

Далее не имеет смысла с вами продолжать дискуссию, так как это уже напоминает комедию, или общение с крайне не адекватным человеком, который даже не в состоянии отдавать себе отчет, что означают фразы, которые он читает. То есть читать вы умеете, но понимать смысл того, что написано не в состоянии. Поэтому я бы вам мог посоветовать открыть стандарт языка С и просто поискать в нем по ключевому слову multidimensional array, но я не вижу в этом смысла, так как вы, как показывает ваше сообщение, все равно не понимаете то, что читаете. Вы все равно будете заявлять, что это просто другое название одномерного массива.

Меня лично не беспокоит ваша безграмотность в вопросах С/С++. Это лично вас должно беспокоить то, что свою безграмотность вы выносите на всеобщее посмешище. Любой квалифицированный грамотный программсит С/С++ вас скажет, что вы несете глупость и задаст простой вопрос: напишите синтаксис объявления многомерного массива и синтаксис объявления олномерного массива. Разницу видите?А теперь попробуйте самостоятельно догадаться без моей помощи, если в С/С++ нет многомерных массивов, то откуда появился такой синтаксис?!
 
Текущее время: 00:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru