程序包 program.sty 中出现“!错误字符代码 (258)。”

程序包 program.sty 中出现“!错误字符代码 (258)。”

我刚刚添加了\usepackage{tikz},然后我得到了“没有空间容纳新的\dimen”错误,我能够通过仅包含链接中所建议的 etex 包来修复该错误(我认为)。

但是,文档的另一部分现在出现错误。我的文档使用程序库,我在属于它的样式文件中得到了这个坏字符错误代码。如果我删除 tikz 和 etex 库(并注释掉我的 tikz 图形代码),文档就可以正常编译。

有什么办法可以解决这个问题吗?

答案1

程序使用 \chardef 来存储当前的“分配编号”。这与 etex 不兼容。一旦分配超过 256 个 dimen,它就会中断:

\documentclass[]{article}

\usepackage{etex,ifthen}
\makeatletter
\@tempcnta=0
\whiledo{\@tempcnta<300}{%
\newdimen\mydimen
\advance\@tempcnta by 1}


\usepackage{program}
\begin{document}
abc
\end{document}

这是一个错误,因此请提交错误报告。

答案2

由于这是一个错误(正如 Ulrike Fischer 的回答所说),目前可能没有办法解决这个问题。

algorithmic我设法通过使用包而不是包来解决这个问题。如果你喜欢的风格,program这可能远非理想,但对我来说已经足够好了。program

相关内容