То же самое, но с 32-разрядной целочисленной арифметикой:
#include <stdio.h>
unsigned short a [] = {
0x0876, 0x5421,
0xfedc, 0xba90,
0x90ab, 0xcdef,
0x1234, 0x5678
};
int
main ()
{
unsigned int d, r;
do
{
r = a [0];
d = r / 10;
r = ((r - d * 10) << 16) + a [1];
a [0] = d;
d = r / 10;
r = ((r - d * 10) << 16) + a [2];
a [1] = d;
d = r / 10;
r = ((r - d * 10) << 16) + a [3];
a [2] = d;
d = r / 10;
r = ((r - d * 10) << 16) + a [4];
a [3] = d;
d = r / 10;
r = ((r - d * 10) << 16) + a [5];
a [4] = d;
d = r / 10;
r = ((r - d * 10) << 16) + a [6];
a [5] = d;
d = r / 10;
r = ((r - d * 10) << 16) + a [7];
a [6] = d;
d = r / 10;
r = r - d * 10;
a [7] = d;
printf ("%d\n", r);
}
while (a[0] || a[1] || a[2] || a[3] || a [4] || a [5] || a[6] || a[7]);
return 0;
}
Можно сделать это в последней версии py2exe...
Просто добавьте что-то как код ниже в Вашем setup.py
файл (ключевая роль 'bundle_files': 1).
Для включения пакета TkInter в установку используйте, 'включает' ключ.
distutils.core.setup(
windows=[
{'script': 'yourmodule.py',
'icon_resources': [(1, 'moduleicon.ico')]
}
],
zipfile=None,
options={'py2exe':{
'includes': ['tkinter'],
'bundle_files': 1
}
}
)
Из-за того, как динамический компоновщик Windows работает, Вы не можете пользоваться статической библиотекой при использовании .pyd или .dll модулей Python; DLLs, загруженные в Windows, автоматически не совместно используют свое пространство символа с исполняемым файлом и тем самым требуют отдельного DLL, содержащего символы Python.
Если Ваша цель наличия единственного исполняемого файла состоит в том, чтобы упростить загрузку/пользование электронной почтой, и т.д., я решил это путем связывания вывода py2exe с помощью Установки Inno. Это на самом деле лучше, чем наличие единственного исполняемого файла, потому что вместо того, чтобы обеспечить исполняемый файл, который может быть брошен в некоторый каталог, Приложение Windows хорошего поведения предоставит деинсталлятор, обнаружится в Добавить/Удалить апплете Программ и т.д. Inno обрабатывает все это для Вас.
Другое решение состоит в том, чтобы создать единственный exe с Python и всеми Вашими зависимостями, установленными в нем, включая python.dll. В обертке существует немного волшебства, но это просто работает. Детали здесь:
http://code.google.com/p/pylunch/downloads/detail?name=PyLunch-0.2.pdf
Это не лучший способ сделать это, но Вы могли бы рассмотреть использование исполняемого Архива SFX и с .exe и с .dll файлами внутри и установкой его для выполнения .exe файла, когда по этому дважды щелкают.