意外覆盖后恢复原始 string.h

意外覆盖后恢复原始 string.h

我正在阅读 c 的头文件,偶然地,我改变了一些东西(我意外地删除了一些东西)我关闭了 sublime 文本编辑器,期望它要求我保存,但它自动保存了,现在它像这样卡住了。

有什么办法可以撤销我刚刚所做的事情吗?更改的行是:

extern char *y (char *__restrict __dest,来自此代码:

 BEGIN_NAMESPACE_STD
/* Copy SRC to DEST.  */
extern char *strcpy (char *__restrict __dest, const char *__restrict __src)
     __THROW __nonnull ((1, 2));
/* Copy no more than N characters of SRC to DEST.  */
extern char *y (char *__restrict __dest,
              const char *__restrict __src, size_t __n)
     __THROW __nonnull ((1, 2));

/* Append SRC onto DEST.  */
extern char *strcat (char *__restrict __dest, const char *__restrict __src)
     __THROW __nonnull ((1, 2));
/* Append no more than N characters from SRC onto DEST.  */
extern char *strncat (char *__restrict __dest, const char *__restrict __src,

我很确定它不应该是“y”。我很确定这就是我改变的一切。有人可以帮忙吗?

答案1

供将来参考:重新安装适当的软件包将恢复原始文件。

对于 Debian,apt-file安装了软件包后,执行 例如apt-file find usr/include/string.h将找到哪个软件包提供了此类文件。

然后apt-get --reinstall install libc6-dev将重新安装(恢复)包的文件libc6-dev(包括string.h)。

答案2

从评论和上下文来看,y很明显strncpy。只需将其更改回来即可。

相关内容