首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"u8“未在此范围内声明

问"u8“未在此范围内声明
EN

Stack Overflow用户
提问于 2019-07-18 02:16:23
回答 2查看 2.9K关注 0票数 0

我正在研究树莓派和红雀盘(来自procerus technologies)之间的通信。现在,我需要从kestrel的包中接收信息,为此我使用了Gumstix中使用的旧代码。在编译的时候,它给出了标题的错误("u8“没有在这个作用域中声明)。错误出现在多个文件中。例如

我认为这个错误与Linux版本有关

代码语言:javascript
复制
#include "dllsetup.h"
#include "type.h"
#include <vector>
#include <linux/types.h> 
#include <asm/types.h>
#include <sys/types.h>

#ifndef LINUX
    EXTERN_LINK template class DYNAMIC_LINK std::vector<u8>;
#endif

//! Packet Data Type defines for easy writing of code.

typedef std::vector<u8> PacketData;
typedef std::vector<u8>::iterator PacketDataIter;
EN

回答 2

Stack Overflow用户

发布于 2019-07-18 02:20:04

u8不在标准中,但uint8_t在标准中(包括在stdint.h和cstdint中)。检查您的includes,验证您是否在某个地方定义了u8。

票数 1
EN

Stack Overflow用户

发布于 2019-07-18 02:33:15

我正在查看<linux/types.h>内核头文件,但是找不到u8。通过另外两层包含,有一个通过<asm/types.h>拉入的__u8。

如果我编译

代码语言:javascript
复制
#include <linux/types.h>
u8 u;

在带有gcc-7.3.0的Ubuntu 18上,它建议这样做。

代码语言:javascript
复制
test.c:2:1: error: unknown type name ‘u8’; did you mean ‘__u8’?
u8 u;
^~
__u8
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57082030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档