Архив метки: C++

C: указатели – подробный разбор

22 мая 2016
 

 Перевод с небольшими дополнениями, уточнениями и примерами. Оригинал в посте C Pointers Explained, Really. >>><<< Когда я учился в колледже – мой друг пожаловался, что ему сложно понять синтаксис и использование указателей при программировании на С. Для примера он привёл код вида “*x=**p++“, говоря что он уродливый и сложный для чтения, в нём слишком много операторов, наложенных друг… Читать далее »

Linux: strace – отслеживаем выполнение процесса

17 февраля 2016
 

 strace – утилита для Linux, которая позволяет отследить выполнение системных вызовов (system call) и сигналов к ядру системы. Для примера возьмем простую программу на С, которая выводит содержимое указанного файла: #include <stdio.h> #include <stdlib.h> int main() { char ch, file_name[25]; FILE *fp; printf(“Enter the name of file you wish to see\n”); gets(file_name); fp = fopen(file_name,”r”);… Читать далее »

C: enum – перечисление

13 апреля 2015
 

 Перечисление – тип данных, задаваемый пользователем, состоящий из целочисленных констант и связанных с ними имён. Для определения перечисления используется ключевое слово enum. Синтаксис определения enum: enum type_name{value1, value2, …, valueN }; Например: enum count {one, two, three, four, five }; Тут count – имя переменной типа enum, а one, two и т.д. – имена значений.

C: переменные argc и argv

23 января 2015
 

 Для работы с аргументами – в C используются две специальные переменные – argc и argv. argc – argument count, или “счётчик аргументов”; argv – argument vector, или “вектор аргументов”. Использовать их очень просто.

C: чтение, добавление, изменение и удаление переменных окружения (getvar, setvar, unsetenv)

22 января 2015
 

 Для работы с переменными используются функции getvar() и setvar() из библиотеки stdlib.h. Как понятно из названий – функция getvar() используется для получения значения переменной, а setvar() – для добавления или изменения.

C++: cppman – manual-страницы для C++

24 июля 2014
 

 cppman – утилита, написанная на Python, которая загружает данные с сайта http://www.cplusplus.com и формирует из них обычную man-страницу. Устанавливаем PyPI: # yum -y install python-pip … Installed: python-pip.noarch 0:1.3.1-4.el6 Complete!

С++: отладка с GDB

19 июля 2014
 

  Домашняя страница проекта – http://www.gnu.org/software/gdb/ Устанавливаем сам отладчик: # yum -y install gdb Предположим, у нас есть файл myfirst.cpp: #include <iostream> int main () { // using namespace std; // using std::cout; using std::endl; std::cout << “Come up and C++ me some time.”; std::cout << endl; std::cout << “You won’t regret it!” << endl; return… Читать далее »