Оказывается, что вопрос, корректен или нет вот такой код &((T*)(0)->x), весьма непрост. Решил написать про это маленькую заметку.
Читать полностью »
Рубрика «Си» - 15
Размышления над разыменованием нулевого указателя
2015-01-15 в 11:44, admin, рубрики: Блог компании PVS-Studio, СиPVS-Studio покопался во внутренностях Linux (3.18.1)
2015-01-03 в 12:27, admin, рубрики: code, linux, linux kernel, open source, pvs-studio, static code analysis, Блог компании PVS-Studio, информационная безопасность, Программирование, Си, системное программирование, статический анализ кода 
Соавтор: Святослав Размыслов SvyatoslavMC.
В рекламных целях мы решили попробовать проверить ядро Linux с помощью нашего статического анализатора кода. Эта задача интересна своей сложностью. Исходные коды Linux чем только не проверялись и проверяются. Поэтому найти хоть что-то новое, весьма сложная задача. Но если получится, то это будет хорошая рекламная заметка о возможностях анализатора PVS-Studio.
Читать полностью »
Подготовка к сертификационному экзамену Microsoft 70-483 «Programming in C#»
2014-12-05 в 6:21, admin, рубрики: .net, microsoft, sharp, Visual Studio, нюансы, Программирование, Си, тестирование, тонкости, трюки, хинты, хитрости, экзамен 
Во время подготовки к экзамену номер 70-483 нашел множество разрозненных сайтов с различными ссылками на мануалы, которые мне немного помогли. Но, что помогло мне больше, так это то, что я составил для себя памятку на нескольких страницах, выдержками из которой и хочу поделиться.
Целью не является подробное описание C#, целью является освежить в памяти и заострить внимание на некоторых необходимых темах. Если какие-то темы вам незнакомы, то это значит, что у вас есть пробелы, которые необходимо устранить.
Раскрывать вопросы тестирования я не могу (да и не помню я уже их), но, если многие из перечисленных ниже нюансов, трюков и тонкостей, помогут вам, то вы на меня не обижайтесь (написано с иронией).
Читать полностью »
Проект Miranda NG получает приз «дикие указатели» (часть вторая)
2014-11-28 в 7:20, admin, рубрики: bug, bugs, c++, code review, pvs-studio, Блог компании PVS-Studio, ошибки в программе, разработка под windows, Си, статический анализ кода 
Продолжим рассматривать ошибки, которые удалось обнаружить в проекте Miranda NG с помощью статического анализатора кода PVS-Studio. В прошлый раз мы говорили об указателях и работе с памятью. Теперь поговорим об ошибках общего плана, которые, в основном, связаны с неаккуратностью и опечатками.
Читать полностью »
Бесплатный CppCat для студентов
2014-11-13 в 13:04, admin, рубрики: c++, c++/cx, c++11, cppcat, pvs-studio, Visual Studio, Блог компании PVS-Studio, инструменты разработчика, Си, статический анализ кода, халява, халява студентам 
CppCat – это статический анализатор кода, интегрирующийся в среду Visual Studio 2010-2013. Анализатор предназначен для регулярного использования и позволяет выявить множество ошибок и опечаток в программах на языке Си и Си++. С целью его популяризации мы решили выдавать бесплатные лицензии всем студентам, которые к нам обратятся. Достаточно прислать фотографию студенческого билета или зачётной книжки.
Читать полностью »
Давай поиграем в игру
2014-09-18 в 6:07, admin, рубрики: bugs, c++, code, errors, open source, pvs-studio, баги, Блог компании PVS-Studio, игра, найди ошибку, ошибки в программе, Си 
Авторы анализатора PVS-Studio предлагают вам проверить свою внимательность.
Анализаторы кода работают без устали и умеют находить множество ошибок, которые сложно заметить. Мы отобрали некоторые фрагменты кода, в которых мы выявили ошибки с помощью PVS-Studio. Все фрагменты взяты из известных Open-Source проектов.
Предлагаем вам посоревноваться с анализаторами в прозорливости и попробовать самостоятельно найти ошибки. Вам будет предложено 15 случайно выбранных заданий. За верный ответ насчитывается одно очко, если он дан в течение 1 минуты. Фрагменты кода короткие, и 1 минута это честное ограничение.
Читать полностью »
Заметка про проверку PHP
2014-09-01 в 11:06, admin, рубрики: php, pvs-studio, Блог компании PVS-Studio, ошибки в программе, Программирование, Си, статический анализ кода 
PHP — скриптовый язык программирования общего назначения, интенсивно применяемый для разработки веб-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков программирования, применяющихся для создания динамических веб-сайтов.
В случае с компиляторами и интерпретаторами к исходному коду и тестированию, как правило, предъявляются повышенные требования качества и надёжности. Тем не менее, в исходном коде интерпретатора PHP нашлись подозрительные места.
В данной статье будут рассмотрены результаты проверки интерпретатора PHP, полученные с помощью PVS-Studio 5.18.
Asterisk: PVS-Studio заинтересовался телефонией
2014-08-26 в 6:58, admin, рубрики: asterisk, ip-телефония, pvs-studio, ошибки в программе, Программирование, Си, статический анализ кода 
Asterisk — свободное решение компьютерной телефонии с открытым исходным кодом от компании Digium. Приложение работает на таких операционных системах, как Linux, FreeBSD, OpenBSD, Solaris. Asterisk в комплексе с необходимым оборудованием обладает всеми возможностями классической АТС, поддерживает множество VoIP-протоколов и предоставляет богатые функции управления звонками.
В данной статье будут рассмотрены результаты проверки Asterisk, полученные с помощью PVS-Studio 5.18.
Проект, по всей видимости, проверяется анализатором Coverity, о чём свидетельствуют комментарии вида:
/* Ignore check_return warning from Coverity for ast_exists_extension below */
Тем не менее, я заметил некоторые досадные опечатки. Попробуем разобраться в них и в других подозрительных местах. Исходный код взят из SVN репозитория проекта.
Новая услуга: регулярный аудит Си-Си++ кода
2014-08-19 в 5:17, admin, рубрики: c++, outsourcing, pvs-studio, обзор кода, разработка программного обеспечения, Си, услуги
До недавнего времени мы занимались исключительно развитием и продажей продукта PVS-Studio. Потом мы подумали и решили предлагать новую услугу: регулярный аудит кода. Про неё я и расскажу. Статья предназначена для менеджеров и тимлидов. Дабы не портить себе настроение и не минусовать, программистов прошу статью не читать.
Читать полностью »
Проверяем исходный код GIMP с помощью PVS-Studio
2014-08-15 в 12:11, admin, рубрики: code review, gimp, pvs-studio, static code analysis, Си, статический анализ кода 
Чтобы проверить GIMP, для начала нужно научиться его компилировать. Это непростая задача, из-за которой поверка несколько раз откладывалась. Однако, проект известный, и интересно оценить качество исходного кода. Поэтому лень была побеждена, и проект проанализирован.
Читать полностью »
