1
\newcommand{\Qf}[3]{\paragraph{\[#1\]}#2\\#3\\}
...
\Qf[AA][AA][AA]
它说There's no line here to end. \Qf[AA
。
2
\usepackage{etoolbox}
...
\csdef{Q1}{
1.1.2-1992-2,3-1
}
\csdef{Q1=}{
$f(x)=e^{x^2},f[\varphi(x)]=1-x,\varphi(x) \geqslant 0,\varphi(x),D(\varphi(x))$
}
\csdef{A1}{
$e^{\varphi(x)^2}=1-x \Rightarrow \varphi(x)=\sqrt{\ln (1-x)}\Rightarrow x<1$
}
\newcommand{\toA}[1]{\hyperlink{answer-#1}{answer}\hypertarget{question-#1}{}}
\newcommand{\toQ}[1]{\hyperlink{question-#1}{back}\hypertarget{answer-#1}{}}
\toQ{\csuse{Q1}}
\csuse{Q1=}
\newpage
\toA{\csuse{Q1}}
它Undefined control sequence. \toQ{\csuse{Q1}}
说Undefined control sequence. \toA{\csuse{Q1}}
3
\usepackage{etoolbox}
...
\csdef{Q1}{
1.1.2-1992-2,3-1
}
\csdef{Q1=}{
$f(x)=e^{x^2},f[\varphi(x)]=1-x,\varphi(x) \geqslant 0,\varphi(x),D(\varphi(x))$
}
\csdef{A1}{
$e^{\varphi(x)^2}=1-x \Rightarrow \varphi(x)=\sqrt{\ln (1-x)}\Rightarrow x<1$
}
\newcommand{\toA}[1]{\hyperlink{answer-#1}{answer}\hypertarget{question-#1}{}}
\newcommand{\toQ}[1]{\hyperlink{question-#1}{back}\hypertarget{answer-#1}{}}
\Qf[\csuse{Q1}][\toA[\csuse{Q1}]][\csuse{Q1=}]
它说There's no line here to end. \Qf[\csuse{Q1}
我不知道为什么,不同的错误信息真的让我感到困惑。
答案1
最好每个帖子只问一个问题,并提供一个测试文件,但是:
1
\documentclass{article}
\begin{document}
\newcommand{\Qf}[3]{\paragraph{\[#1\]}#2\\#3\\}
\Qf[AA][AA][AA]
\end{document}
这不会产生所述错误或任何错误,但是的三个参数\Qf
是[
、A
和A
。
\paragraph
是一个分段命令,其标题内联到段落的第一句,因此\[\]
在标题中使用显示数学非常很奇怪,在这种情况下,显示仅包含[
前两行,#2
并且#3
都是 A,所以你得到:
2
您没有说您遇到了什么错误,也没有提供测试文件。
\documentclass{article}
\usepackage{etoolbox}
\begin{document}
\csdef{Q1}{
1.1.2-1992-2,3-1
}
\csdef{Q1=}{
$f(x)=e^{x^2},f[\varphi(x)]=1-x,\varphi(x) \geqslant 0,\varphi(x),D(\varphi(x))$
}
\csdef{A1}{
$e^{\varphi(x)^2}=1-x \Rightarrow \varphi(x)=\sqrt{\ln (1-x)}\Rightarrow x<1$
}
\newcommand{\toA}[1]{\hyperlink{answer-#1}{answer}\hypertarget{question-#1}{}}
\newcommand{\toQ}[1]{\hyperlink{question-#1}{back}\hypertarget{answer-#1}{}}
\toQ{\csuse{Q1}}
\csuse{Q1=}
\newpage
\toA{\csuse{Q1}}
\end{document}
产生错误
! Undefined control sequence.
\toQ #1->\hyperlink
{question-#1}{back}\hypertarget {answer-#1}{}
l.20 \toQ{\csuse{Q1}}
?
显示 \hyperlink
超链接未定义。
将行更改\usepackage
为
\usepackage{etoolbox,hyperref}
解决了该错误,但产生了错误:
! Undefined control sequence.
\Q1= ...,f[\varphi (x)]=1-x,\varphi (x) \geqslant
0,\varphi (x),D(\varphi (x...
l.21 \csuse{Q1=}
?
显示\geqslant
未定义,因此将\usepackage
行更改为
\usepackage{etoolbox,amssymb,hyperref}
使示例运行无错误。
3
我无法猜测如何将您的片段扩展为给出所述错误的示例。
\documentclass{article}
\usepackage{etoolbox,amssymb,hyperref}
\begin{document}
\newcommand{\Qf}[3]{\paragraph{\[#1\]}#2\\#3\\}
\csdef{Q1}{
1.1.2-1992-2,3-1
}
\csdef{Q1=}{
$f(x)=e^{x^2},f[\varphi(x)]=1-x,\varphi(x) \geqslant 0,\varphi(x),D(\varphi(x))$
}
\csdef{A1}{
$e^{\varphi(x)^2}=1-x \Rightarrow \varphi(x)=\sqrt{\ln (1-x)}\Rightarrow x<1$
}
\newcommand{\toA}[1]{\hyperlink{answer-#1}{answer}\hypertarget{question-#1}{}}
\newcommand{\toQ}[1]{\hyperlink{question-#1}{back}\hypertarget{answer-#1}{}}
\Qf[\csuse{Q1}][\toA[\csuse{Q1}]][\csuse{Q1=}]
\end{document}
产生错误
! Missing \endcsname inserted.
<to be read again>
\protect
l.24 \Qf[\csuse{Q1}
][\toA[\csuse{Q1}]][\csuse{Q1=}]
?
因为这里的三个参数\Qf
是[
,\csuse
并且{Q1}
因此,#2\\
的替换文本中的\Qf
将是\csuse\\
将命令\\
作为参数的,\csuse
但由于这不会扩展为字符列表,因此它不能形成 csname,并且您会得到\endcsname
所示的低级错误。