C and C++ Manual with Code Examples C и C + + Руководство со Примеры кода
C and C++ are two of the most important programming languages today. C и C + + являются двумя наиболее важных языков программирования и сегодня. Many professional programmers are proficient in C and C++. Многие профессиональные программисты хорошо знают C и C + +. These two programming languages are the foundation upon which modern programming is built. Эти две языки программирования являются фундаментом, на котором современный программирования строится.
The C language was invented by Dennis Ritchie in the 1970s. С языком был изобретен Деннис Ричи в 1970. It is a middle-level language and combines the control structures of a high-level language with the ability to manipulate bits, bytes, and pointers, or addresses. Он среднего уровня языка и сочетает в себе контроль структур высокого уровня, язык, способность манипулировать биты, байты, а также указатели или адреса. C provides a programmer virtually complete control over the computer. C предоставляет программисту практически полный контроль над компьютером.
This web site, the C / C++ Zone, is not designed as a tutorial, but rather as a C and C++ programming manual with usable code examples . Этот веб-сайт, C / C + + Зоны, не предназначен в качестве учебника, а, скорее, как C и C + + руководство по программированию с примерами использования кода. It is under constant development. Он находится в постоянном развитии.
C / C++ Zone C / C + + Зона
Algorithms Алгоритмы
The generic algorithms fall into four categories, as listed here: Общие алгоритмы делятся на четыре категории, перечисленные здесь:
Non-modifying sequence algorithms: Do not modify the containers on which they work. Неприсоединения изменения последовательности алгоритмов: Не изменять контейнеры, на которых они работают. Such algorithms include: Такие алгоритмы включают в себя:
adjacent_find, find, find_end, find_first, count, mismatch, equal, for_each, search. adjacent_find, найти, find_end, find_first, рассчитывать, несоответствие, равного, for_each, поиск.
Mutating sequence algorithms: Modify the containers on which they work. Mutating последовательность алгоритмов: Изменить контейнеры, на которых они работают. Such algorithms include: Такие алгоритмы включают в себя:
copy_backward, fill, generate, partition, random_shuffle, remove, replace, rotate, reverse, swap, swap_ranges, transform, unique. copy_backward, заполните, генерировать, раздел, random_shuffle, удалить, заменить, вращать, наоборот, своп, swap_ranges, преобразование, уникальна.
Sorting algorithms: Sort the contents of containers in various ways. Алгоритмы сортировки: Сортировка содержимого контейнеров в различных формах. These algorithms include: Эти алгоритмы включают в себя:
sort, stable_sort, partial_sort, partial_sort_copy, as well as a number of related functions, including: сортировать, stable_sort, partial_sort, partial_sort_copy, а также ряд сопутствующих функций, в том числе:
nth_element, binary_search, lower_bound, upper_bound, equal_range, merge, includes, push_heap, pop_heap, make_heap, sort_heap, set_union, set_intersection, set_difference, set_symmetric_difference, min, min_element, max, max_element, lexicographical_compare, next_permutation, prev_permutation. nth_element, binary_search, lower_bound, upper_bound, equal_range, объединить, включает в себя, push_heap, pop_heap, make_heap, sort_heap, set_union, set_intersection, set_difference, set_symmetric_difference, мин, min_element, макс, max_element, lexicographical_compare, next_permutation, prev_permutation.
Numeric algorithms: Perform numeric calculations on the contents of containers. Цифровая алгоритмов: Выполнять числовые расчеты, на содержание контейнеров. These category includes: Эти категории относятся:
accumulate, adjacent_difference, inner_product, iota, partial_sum, power. накапливать, adjacent_difference, inner_product, iota, partial_sum, власть.
Iterators Итераторы
Iterators are pointer-like objects that allow programs to step through the elements of a container sequentially without exposing the underlying representation. Итераторы являются указка-подобных объектов, которые позволяют активизировать программы, с помощью элементов контейнера последовательно не обнажая лежащие представительства. Iterators can be advanced from one element to the next by incrementing them. Итераторы может быть достигнуто с одного элемента к следующей увеличивающиеся на них. Some iterators can also be decremented or allow arbitrary jumps from one element to another, as we will see later. Некоторые итераторы могут быть также уменьшает или разрешать произвольные переходы из одного элемента к другому, как мы увидим позже. When they are dereferenced, iterators yield a reference to a container element. Когда они dereferenced, итераторы доходность ссылкой на контейнер элемента. In addition, they can be compared to each other for equality or inequality. Кроме того, они могут быть сопоставлены друг с другом для обеспечения равенства или неравенства.
Iterators interact seamlessly with built-in C++ types. Итераторы, слаженно взаимодействовать со встроенными в C + + типов. In particular, native C++ pointers are treated as iterators to C++ arrays. В частности, родной C + + указатели, рассматриваются как итераторы на C + + массивы. Naturally, all containers in the Standard C++ Library define an iterator type, ie, a nested type iterator that represent their respective pointer-like type. Естественно, все контейнеры в стандарт C + + Библиотека определить итератор типа, то есть, вложенных итератор типа, которые представляют их как-указатель типа.
Iterator Categories Iterators fall into categories. Iterator итераторы категории делятся на категории. This is because different algorithms impose different requirements on an iterator they use. Это объясняется тем, что различные алгоритмы вводить различные требования по итератор они используют. For example, the find() algorithms needs an iterator that can be advanced by incrementing it, whereas the reverse() algorithm needs an iterator that can be decremented as well, etc. Ultimately, there are five categories of iterators in STL and Standard C++ Library: Так, например, найти () алгоритмы потребностей итератор, что может быть достигнуто путем увеличивающиеся он, в то время вспять () алгоритм потребностей итератор, которые могут быть уменьшает, а и т.д. В конечном счете, существует пять категорий в STL итераторы и стандарт C + + Библиотека:
- input iterators вход итераторы
- output iterators выходной итераторы
- forward iterators вперед итераторы
- bidirectional iterators двунаправленные итераторы
- random access iterators произвольный доступ итераторы
An iterator category is an abstraction. Итератор категории является абстракцией. It represents a set of requirements to an iterator. Она представляет собой набор требований к итератор.
STL STL
The S tandard T emplate L ibrary is a new C++ library that provides a set of easily composable C++ container classes and generic algorithms (template functions). S tandard T emplate L ibrary является новым C + + библиотека, которая предоставляет набор легко composable C + + контейнерных классов и общие алгоритмы (шаблон функции).
The container classes include vectors, lists, deques, sets, multisets, maps, multimaps, stacks, queues and priority queues. Контейнерных классов относятся векторы, списки, deques, наборы, multisets, карты, multimaps, стеки, очереди и приоритетные очереди.
The generic algorithms include a broad range of fundamental algorithms for the most common kinds of data manipulations, such as searching, sorting, merging, copying, and transforming. Общие алгоритмы включают широкий спектр фундаментальных алгоритмов для наиболее распространенных видов данных манипуляций, таких как поиск, сортировка, слияние, копирования и преобразования.
At its July 1994 meeting, the ANSI/ISO C++ Standards Committee voted to adopt STL as part of the standard C++ library. На июль 1994 года, ANSI / ISO C + + Стандарты комитета проголосовали за то, чтобы принять STL как часть стандарта C + + библиотеки. The STL proposal to the committee by Alex Stepanov and Meng Lee of Hewlett-Packard Labs was based on research on generic programming and generic software libraries that Stepanov, Lee, and David Musser have been working on for several years, in Scheme, Ada, and C++. STL предложение комитета Алексей Степанов и Ли Мэн из Hewlett-Packard Labs была основана на исследованиях на общих программ и общих программных библиотек, Степанов, Ли и Дэвид Musser были на протяжении нескольких лет, в Схеме, Ада, и C + +.
String String
C++ supports characters strings two ways. C + + поддерживает символов строки двумя путями. The first is as a null-terminated character array. Первый, как нуль-символ прекращено массива. This is sometimes referred to as a C string. Это иногда называют C строкой. The second way is as a class object of type basic_string. Второй способ состоит в классе объект типа basic_string. The basic_string class is essentially a container. Basic_string-класса, по сути контейнер. this means that iterators and the STL algorithms can operate on string. это означает, что итераторы и алгоритмы STL может работать на строку. However, string has additional capabilities. Тем не менее, есть дополнительные возможности.
C++ string recognizes operators: <, <=, >, >=, ==, !=, =, += . C + + строка признает операторы: <, <=,>,> =, ==,! =, =, + =.
When you use template functions, or classes you don't need to write addition function with strcpy, ctrcmp of ctrcat... При использовании шаблона функции или классы вам не нужно писать помимо функции strcpy, ctrcmp из ctrcat ... In this case C++ string works like any of built-in data type. В этом случае C + + строка работает подобно любой из встроенных в тип данных.
String functions .C++ string, like any of container classes, has its own public functions, that add a lot of flexibility for manipulation of C++ string data type. Строковые функции. C + + строки, как и любой контейнерных классов, имеет свои публичные функции, чтобы добавить много гибкости для манипулирования C + + строка типа данных.
Overflowing. Течению.
You don't need to think about overflowing or null-terminating character. Не нужно думать о переполнены или нуль-завершающего символа. C++ string allows use sequence of characters as long as allows ability of your OS. C + + позволяет использовать строку последовательность символов, столько, сколько позволяют возможности Вашей операционной системы.
More C Programming Examples and Help Другие примеры программирования C и помочь
Stdio Functions Stdio Функции
String Functions Строковые Функции
Time Functions Время Функции
Technorati Tags: Technorati Tags: c programming с программированию , c code с кодом , c examples с примерами , c manual с ручной , c++ К + + , c++ programming К + + программирование , c++ code К + + код , c++ examples К + + примеры , c++ manual К + + руководство
Popularity: 38% [ Популярность: 38% [ ? ? ] ]
Related Posts: Похожие сообщения:





















