variableAccess

Просмотрите глобальные переменные C/C++ наряду с операциями чтения-записи

Описание

пример

varList = variableAccess(resObj) возвращает распределение глобальных переменных в наборе результатов Программы автоматического доказательства Кода, обозначенном polyspace.CodeProverResults Объект (Polyspace Code Prover) resObj. Список также содержит все операции чтения и операции записи на глобальных переменных.

Примеры

свернуть все

В этом примере показано, как считать результаты анализа Программы автоматического доказательства Кода из MATLAB®.

Скопируйте демонстрационный набор результатов во временную папку.

resPath = fullfile(polyspaceroot,'polyspace','examples','cxx','Code_Prover_Example', ...
'Module_1','CP_Result');
userResPath = tempname;
copyfile(resPath,userResPath);

Создайте объект результатов.

resObj = polyspace.CodeProverResults(userResPath);

Считайте список глобальных переменных к таблицам MATLAB с помощью объекта.

varList = variableAccess(resObj);

Запустите анализ Polyspace® Code Prover™ демонстрационного файла single_file_analysis.c. Сконфигурируйте эти опции:

  • Задайте GCC 4.9 как свой компилятор.

  • Сохраните результаты в results подпапка текущей рабочей папки.

  • Укажите что main функция должна быть сгенерирована, если она не существует в исходном коде.

proj = polyspace.Project

% Configure analysis
proj.Configuration.Sources = {fullfile(polyspaceroot, 'polyspace', 'examples',...
    'cxx', 'Code_Prover_Example', 'sources', 'single_file_analysis.c')};
proj.Configuration.TargetCompiler.Compiler = 'gnu4.9';
proj.Configuration.ResultsDir = fullfile(pwd,'results');
proj.Configuration.CodeProverVerification.MainGenerator = true;


% Run analysis
cpStatus = proj.run('codeProver');

% Read results
resObj = proj.Results;
cpSummary = variableAccess(resObj);

Входные параметры

свернуть все

Результаты Программы автоматического доказательства кода установлены в виде polyspace.CodeProverResults Объект (Polyspace Code Prover).

Выходные аргументы

свернуть все

Таблица, показывающая все глобальные переменные от одного анализа Программы автоматического доказательства Кода наряду с операциями чтения и операциями записи на них.

  • Для каждой глобальной переменной таблица имеет информацию, такую как тип данных, число раз получило доступ и так далее.

  • Для каждой операции чтения или операции записи, таблица имеет информацию, такую как имя файла и имя функции, номер строки, и так далее.

Если особая информация не доступна для результата, запись в таблице утверждает <undefined>.

Смотрите также

(Polyspace Code Prover)

Введенный в R2017a