Просмотреть возвращаемое значение?

Скажите, что у меня есть следующее

int num = 40 + str2Int("30");

Есть ли так или иначе с Visual Studio 2008 для сообщения то, что Str2Int возвращает, не ступая в функцию и идя в возврат?

9
задан Prasoon Saurav 17 January 2010 в 04:45
поделиться

6 ответов

В разделе «Авто» переменная Windows она отобразится результат любых операций, которые вы только что наступили.

РЕДАКТИРОВАНИЕ: Удалена неопределенность на месте этого (спасибо, идет в Майкл Берр)

9
ответ дан 4 December 2019 в 15:19
поделиться

Так как возвращаемое значение обычно находится в регистре EAX, вы помещаете 'переменную' $eax в окно часов. Когда вы перешагиваете через вызов функции, то, что находится в EAX - это то, что возвращается этой функцией.

И если Вы также поместите символ формата hr, то отладчик покажет Вам сообщение об ошибке HRESULT или Win32 (например, "S_OK" или "Доступ запрещен") вместо простого необработанного номера. Удобно иметь каждый ($eax и $eax,hr) в отдельных сторожевых записях.

Еще одна полезная запись - $err, которая показывает, что GetLastError() вернется (и символ формата hr может быть применен к нему - или что угодно - также):

$eax
$eax,hr
$err
$err,hr

Обратите внимание, что более старые версии отладчика VS могут захотеть, чтобы вы использовали @ вместо $ для запуска этих переменных, но один из членов команды отладчиков заявил, что $ предпочтительнее, чтобы все оставалось в соответствии с набором инструментов "Debugging Tools for Windows" (я думаю, что поддержка для @ устарела и может быть в какой-то момент удалена).

2
ответ дан 4 December 2019 в 15:19
поделиться
cout << Str2Int("30") << endl;

Or!

cout << (num - 40) << endl;
0
ответ дан 4 December 2019 в 15:19
поделиться

Правильный путь к программе - всегда писать небольшие фрагменты кода, чтобы проверить, как все работает. Например, если вы хотите изучить функцию str2int (как вы, как вы уже говорили), создайте тестовый файл только для него. Запустите его с разными параметрами, изучите, как он работает. Затем вы, наконец, убедитесь, что он работает правильно и не будет нуждаться в его выражениях. После того, как программисты знакомы с инструментами, они доверием их и не имеют необходимости всегда проверять, как они работают.

Более того, если это функция . Вы реализованы, прямая следствие вышеупомянутого является создание файла с помощью модульных тестов для него. Агрегатные тесты осуществляют функцию различными способами, пока вы не доверяете, это действительно работает.

0
ответ дан 4 December 2019 в 15:19
поделиться

Для ответа на ваш вопрос rmic [ Solaris , Windows ] является компилятором RMI Java и создает заглушки, скелеты, связи для удаленных объектов с использованием протоколов JRMP или IIOP. Кроме того, создается IDL OMG. Что касается способа, ваш вопрос немного расплывчат, но ответ может быть чем-то вроде того, что соответствует протоколу JRMP или протоколу IIOP или спецификации CORBA IDL.

Ознакомьтесь с предоставленными ссылками (ссылками ) для описания этих различных концепций. Если для вас это звучит как китайский язык, вам, вероятно, следует ознакомиться с руководством по RMI . В первой главе учебного пособия рассматриваются концепции RMI.

Также обратите внимание, что (из руководства):

В версиях до Java Platform, Standard Edition 5.0, потребовался дополнительный шаг для построения классов-заглушек с помощью компилятора rmic. Однако в этом шаге больше нет необходимости.

Поэтому, если сервер RMI не должен поддерживать клиенты, работающие на виртуальных машинах до 5.0, вам не нужно беспокоиться о rmic .

Еще одним хорошим ресурсом для начала работы является... Начало работы с Java RMI , образцом Hello World для RMI.

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

-121--4631831-

Программно получить имя начального образа с помощью Win32 API, например, NtQuureInformationProcess , или в .Net использовать System.Diagnostics.Process.GetProcesses () и прочтите Process.StartInfo.FileName .

Затем откройте и декодируйте заголовки PE этого образа, используя сведения, указанные в статье MSDN ниже:

http://msdn.microsoft.com/en-us/magazine/cc301808.aspx

Предостережения: будут обнаруживать только сборки .NET, например, не будут обнаруживать Win32 EXE, динамически размещающие CLR с помощью API CorHost.

-121--1856407-

Я не хотел этого с тех пор, как был на PowerPC, и я ничего не использую Microsoft, но вы, вероятно, хотите список регистров и представление кода сборки... Они должны быть у MSVC.

Остановитесь на инструкции после вызова функции (которую должно быть легко выбрать), и согласно Википедии возвращаемое значение должно быть в EAX/RAX. Скопируйте значение (или изучите синтаксис отладчика для ссылки на регистр) и приведите его к соответствующему типу.

0
ответ дан 4 December 2019 в 15:19
поделиться

Вы можете использовать немедленное окно Visual Studio. Это позволит вам оценить различные выражения.

2
ответ дан 4 December 2019 в 15:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: