我的系统中安装了 ctype.h 吗?

我的系统中安装了 ctype.h 吗?

我正在运行 16.04。我的 C 程序使用 isdigit(int)。当我在 gdb 下运行它时,我得到以下信息:

`Breakpoint 1, check_tok (token=0x6f7c20 <tokens> ".t") at outline.c:150
150 unsigned char *tp=token;
(gdb) s
151     if(isdigit(*tp))return NUM;
(gdb) 
__ctype_b_loc () at ../include/ctype.h:38
38  ../include/ctype.h: No such file or directory.
(gdb) 

我已经表演过:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential

` 当我在 outline.c 上运行 gcc 时,我没有收到任何警告。在我的程序顶部我有:

#include <ctype.h>
#include <stdlib.h>
#include <stdio.h>
#include "outline.h"

我只在 gdb 中收到上述错误。

发生什么事了?谢谢。

答案1

问题不在于您没有 ctype.h,因为您需要它来编译程序。对于您来说,这取决于 gdb 定位包含的方式。也许您需要使用“locate ctype.h”并在 gdb 中设置包含目录,如下所示:

设置替代路径 /usr/src/include /mnt/include

请看这里:https://sourceware.org/gdb/onlinedocs/gdb/Source-Path.html

相关内容