社区首页 >问答首页 >在创建c++程序时,我需要关心endianness吗?

在创建c++程序时,我需要关心endianness吗?
EN

Stack Overflow用户
提问于 2021-08-18 05:28:14
回答 2查看 193关注 0票数 0

我知道,当我从二进制文件和网络读取数据时,我应该关心这个问题,但是用源代码做什么呢?如果我分配价值,例如int = 42,对endianness有影响吗?它会在大端机器上编译,然后在小端机上不能正常工作吗?或者编译器会处理这个问题?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-08-18 05:46:04

尽管它被认为是一种低级语言,但在编写C++代码时,实际上并不是为具体的计算机编写代码。

相反,C++代码的目标是所谓的抽象机器( C++ 抽象机 ),编译器的任务是将程序在抽象机器上所引起的行为转换为对实际目标机器产生相同效果的东西(技术上的任何东西)。

在实践中,大多数编译器绕过它,将代码半直接转换为最终目标,但这仍然是他们必须尊重的模型。

Endianness,以及我们认为理所当然的其他事情,并不是一个存在于C++抽象机器中的概念。正如您所指出的,除非您深入研究原始数据,否则您不必担心它。

作为一个极端的例子,以>>,位移位运算符为例.对于多字节类型,它在抽象机器上有一个定义良好的行为,因此它的行为不能依赖于目标的特性。不是实际的位被移位,而是

票数 5
EN

Stack Overflow用户

发布于 2021-08-18 05:37:58

当您将程序编译成机器代码时,必须针对特定的CPU体系结构。构建链将注意生成目标CPU理解的代码和数据。

通常不能在不兼容的CPU上执行编译的程序。(不是没有模仿。在仿真的情况下,仿真程序必须处理二进制表示的差异)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68833372

复制
相关文章
g++ 编译 c++ 程序时需要包括 include .h 文件,还是需要 .cpp 文件
g++ 编译 c++ 程序时需要包括 include .h 文件,还是需要 .cpp 文件 最近用Eclipse 下的cdt 学习c++ 发现大部分的时候 main.cpp 中只需要包括 .h文件就可以了 cpp 文件在编译的时候用 g++ main.cpp *.cpp *.cpp 指定就可以。 可是今天上午编译一个 自己写的 类模板的代码 stack.h 和 stack.cpp ,main.cpp 中如果只包括 stack.h 就会出现: undefine
田春峰-JCJC错别字检测
2019/02/14
2.1K0
注释,今晚我不关心代码,我只想你
在单个函数超过一千行屎山代码和一天开发两天上线的傻X需求之前,能拯救我的只有注释。
特立独行的分享
2021/03/03
3400
未来数据库需要关心的硬核创新
导读:数据库经过了几十年的发展,目前已经是一项非常成熟的技术,然而随着当今互联网的极速增长,我们进入到云时代,企业亟需构建现代化的应用,因此数据库有了更大的挑战。今天结合当前时代的发展和趋势,分享未来数据库需要关注的硬核创新。
DataFunTalk
2022/07/24
8150
未来数据库需要关心的硬核创新
有人关心过线程池里死掉的线程吗?
到这可以看到,通过submit方式执行时会返回Future结果,调用结果的get()方法,才会把异常信息打印出来,所以总结一下:
Java阿呆
2021/04/30
1.7K0
有人关心过线程池里死掉的线程吗?
我真的需要第三方安全审计吗?
写在前面的话 随着安全威胁以及数据泄露事件数量的不断增加,很多客户都希望通过增加额外的安全保护措施来让自己的机密信息得到更好的安全保障。现在很多企业在面对“信息安全”这个问题时,都会努力让自己符合行业
FB客服
2018/03/22
2.2K0
我真的需要第三方安全审计吗?
容器与云|为什么需要关心服务网格
很多开发者不知道为什么要关心服务网格ServiceMesh。这是我在开发者见面会、会议和实践研讨会上关于云原生架构的微服务开发的演讲中经常被问到的问题。我的回答总是一样的:“只要你想简化你的微服务架构,它就应该运行在Kubernetes上。”
知忆
2021/07/06
5500
我在代码里面故意留个漏洞,违法吗?
这是「进击的Coder」的第 699 篇分享 来源:Python 编程时光 “ 阅读本文大概需要 4 分钟。 ” 昨天我在逛知乎的时候,看到了这么一个问题: 我看到了三个非常有意思的回答,分享给大家一看。 首先是这个为了防止项目交付后收不到尾款埋下后门的回答: 答主:特立独行的猪 链接:https://www.zhihu.com/question/531724027/answer/2487270093 早年给某台企做外包项目,定制一个Android系统的ROM。开发费用16万,一年期维护费用2万。 开发
崔庆才
2022/07/26
7520
我在代码里面故意留个漏洞,违法吗?
我在代码里面故意留个漏洞,违法吗?
早年给某台企做外包项目,定制一个Android系统的ROM。开发费用16万,一年期维护费用2万。 开发费用分三期打款,订金4万,生产环境ROM交付8万,验收并交付源码后打尾款4万。 生产环境ROM交付前留了一手,加了时间戳校验,混杂在驱动程序里,6个月后不能开机。 果不其然,过了4个月对方也没把尾款打过来,显然是用着没什么毛病,源码不打算要了,维护费用也一起省了。每次催款都用各种理由搪塞。 又过了2个月,埋的雷爆了,他们的下游客户开始各种投诉。这才把剩余款项收回来。 懒得说这家公司的名字,挺有名的公司,估计很多人用过他们的产品。 如果不留这一手,估计就要吃哑巴亏了,毕竟台湾省的官司打起来费劲儿。在这种情况下,这叫自我保护,不违法。
轩辕之风
2022/12/07
5050
我在代码里面故意留个漏洞,违法吗?
我为什么要关心区块链?概述和接纳
我的心路历程从“我不追随潮流”变为“我认为区块链技术有潜力”。2017年初,我开始了这段区块链旅程——我开始看William Mougayar的书《Business Blockchain》。虽然我最初并不了解所有的技术方面——但我对区块链的含义感到震惊。如果这是真实可行的技术,那它有可能改变我们的日常生活,不仅将公司系统彻底破坏,还将重塑整个世界的经济系统。我将个中的基本含义提取了出来,以节省您的时间。
Bon
2018/03/09
1.3K0
我在代码里面故意留个漏洞,违法吗?
早年给某台企做外包项目,定制一个Android系统的ROM。开发费用16万,一年期维护费用2万。 开发费用分三期打款,订金4万,生产环境ROM交付8万,验收并交付源码后打尾款4万。 生产环境ROM交付前留了一手,加了时间戳校验,混杂在驱动程序里,6个月后不能开机。 果不其然,过了4个月对方也没把尾款打过来,显然是用着没什么毛病,源码不打算要了,维护费用也一起省了。每次催款都用各种理由搪塞。 又过了2个月,埋的雷爆了,他们的下游客户开始各种投诉。这才把剩余款项收回来。 懒得说这家公司的名字,挺有名的公司,估计很多人用过他们的产品。 如果不留这一手,估计就要吃哑巴亏了,毕竟台湾省的官司打起来费劲儿。在这种情况下,这叫自我保护,不违法。
快学Python
2022/11/28
5280
我在代码里面故意留个漏洞,违法吗?
我应该使用 PyCharm 在 Python 中编程吗?
Python 是一种广泛使用的编程语言,以其简单、多功能和庞大的开发人员社区而闻名。这个社区不断创建新的库和工具,以提高Python编程的效率和便利性。选择正确的环境来编写和调试 Python 代码可能具有挑战性,但 PyCharm 是一个很好的选择,从其他选项中脱颖而出。
很酷的站长
2023/02/20
4.6K0
我应该使用 PyCharm 在 Python 中编程吗?
前端|在开发web程序时常遇到的错误
在开发Web程序时会不可避免地犯下一些错误,下面将通过观察这些错误出现的现象来学习排除错误的方法,进而排除这些错误。
算法与编程之美
2019/11/07
7310
前端|在开发web程序时常遇到的错误
使用了 Service Mesh 后我还需要 API 网关吗?
如文章标题所示,本文通过对 Service Mesh 技术和 API 网关的对比,着重分析了两者的功能重合点和分歧点,解答了开发者的困惑,为如何进行技术选型和落地提供了指导思路。
CNCF
2020/02/20
1.2K0
使用了 Service Mesh 后我还需要 API 网关吗?
64 - 你了解协程吗?
协程的概念 协程: 又称为微线程、纤程,英文名: Coroutine 通过 async/await 语法进行声明,是编写异步应用的推荐方式 import asyncio async def main(): print('hello') await asyncio.sleep(1) print('world') # python # asyncio.run(main()) # jupyter await main() hello world 协程中有哪两个运行任务的函
ruochen
2021/06/10
3130
64 - 你了解协程吗?
Redis需要代理吗?
前面我们聊到redis根据AKF拆分理论根据Y、Z轴拆分的相关知识,相信大家对redis扩展有了一定认识。
灬沙师弟
2023/07/08
2230
Redis需要代理吗?
你需要 GraphQL 吗?
第一次了解到 GraphQL 是查阅 Github 文档时,偶然看到 v4 版本文档只要一个链接就可以完成所有获取数据和更新数据请求,当时看到觉得特别惊艳,能跳出 REST 请求模式,构建出全新的一套环境来实现网络请求,GraphQL 的开发者确实很有想法。
Omniqia
2019/07/03
2.2K0
你需要 GraphQL 吗?
一周VR热点回顾:我不关心这个七夕有没有人陪,我只关心你:iPhone 8!
再过两天,牛郎和织女就要相聚。凡间的一大波情侣们也即将上线,抱着虐死狗不偿命的宗旨,在祖国各地大撒狗粮。不过单身狗小编早已看透,中国的情侣们总有把所有节日(除清明)过成情人节的超能力,所以我们无所畏惧
VRPinea
2018/05/15
6400
FE(0x01)--前端吗?我需要一个按钮
思考了下,我还是觉得把button换成按钮吧!标题才显得有意义,先卖个关子,后面我再讲为啥。FE的全称就是Front end,所以这个题材是写前端的,但并不是以技术作为切入点,而是以业务为思考,立足于实践,颗粒化一张张网页的零部件作为切入点,后面的学习都会以这种打法呈现,为此我还准备了一个梗,请看楼下:
江涛学编程
2020/06/19
8450
FE(0x01)--前端吗?我需要一个按钮
C++|并发|libco协程剖析
C++20推出了官方的协程库,但是在此之前C++并没有提供协程语法。libco是经典的C++协程库,本文将从源码角度分析libco,并参考了原作者的文章。
朝闻君
2021/11/22
1.3K0
C++|并发|libco协程剖析
切入“千亿”旅游营销市场,携程能再造“携程”吗?
管理大师彼得·德鲁克曾说过,在动荡的时代,动荡本身并不可怕,可怕的是延续过去的逻辑。
曾响铃
2021/04/23
4390
切入“千亿”旅游营销市场,携程能再造“携程”吗?

相似问题

IOS 10宽颜色:我需要关心吗?

15

iPhone:什么是Springboard?我需要关心吗?

30

C++:如果我不使用移动,我还需要关心复制控制吗?

11

Endianness总是需要考虑的问题吗?

13

在生成HTML时,我需要关心缩进吗?

21
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文