广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C语言中sizeof函数使用的坑怎么解决
  • 791
分享到

C语言中sizeof函数使用的坑怎么解决

2023-06-29 23:06:06 791人浏览 安东尼
摘要

这篇文章主要介绍“C语言中sizeof函数使用的坑怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C语言中sizeof函数使用的坑怎么解决”文章能帮助大家解决问题。先来看这样一段代码int&n

这篇文章主要介绍“C语言中sizeof函数使用的坑怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C语言中sizeof函数使用的坑怎么解决”文章能帮助大家解决问题。

先来看这样一段代码

int main(){int i=2;printf("%d\n",sizeof(i++));printf("%d\n",i);return 0;}

非常简单的一段代码

当时我认为答案应该是

4

3

可是结果却是出乎我的意料了

C语言中sizeof函数使用的坑怎么解决

这是为什么呢?

下面来仔细说一下

C语言中sizeof函数使用的坑怎么解决

C语言中sizeof函数使用的坑怎么解决

通过调试观察虽然确实有i++这么一句代码,但是却没有实现。说到这里很多人可能犯了和我一样的错误,认为sizeof是一个函数。

其实并非如此,sizeof其实是单目操作符的一种,可以求变量类型所占用的空间,单位是字节。

说到这里就应该和strlen函数区分开,strlen函数求的是字符串的字符数,不包括’\0’,而sizeof由于求的是字节数,会将’\0’计算上。

再说几个与sizeof这种情况类似的,避免踩坑。

逻辑操作符 &&和 ||也会产生这样的坑

来看这样一道题

int main(){int i = 0, a = 0, b = 2, c = 3, d = 4;i = a++ && ++b && c++;//i = a++||++b||c++;printf("a = %d\nb = %d\nc = %d\n", a, b, c);return 0;}

答案:

C语言中sizeof函数使用的坑怎么解决

这里大家或许就有疑问了,这个b为什么不等于2呢,这个c为什么不等于4呢,这不是后置++了吗?

其实逻辑操作符在运算过程中并不会把每个对象都计算到,就拿这个举例子,由于是后置++,a此时还等于0,对于&&逻辑与来说,答案已经显而易见了,0和任何数逻辑与都等于0。所以后面的b++,和c++并没有被计算到。

我想逻辑或也是同理吧,只有有一个”真“,逻辑或得到的就是”真“。

这就意味着c++并没实现。

C语言中sizeof函数使用的坑怎么解决

关于“C语言中sizeof函数使用的坑怎么解决”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网其他教程频道,小编每天都会为大家更新不同的知识点。

--结束END--

本文标题: C语言中sizeof函数使用的坑怎么解决

本文链接: https://www.lsjlt.com/news/326681.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C语言中sizeof函数使用的坑怎么解决
    这篇文章主要介绍“C语言中sizeof函数使用的坑怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C语言中sizeof函数使用的坑怎么解决”文章能帮助大家解决问题。先来看这样一段代码int&n...
    99+
    2023-06-29
  • c语言sizeof函数怎么使用
    在C语言中,sizeof是一个用于获取数据类型或变量占用内存大小的运算符。它的使用方式有以下几种:1. 获取数据类型的大小:size...
    99+
    2023-08-31
    c语言 sizeof
  • C语言中sizeof函数踩过的坑总结
    sizeof很简单,但是却很容易令人踩坑。 正文 先来看这样一段代码 int main() { int i=2; printf("%d\n",sizeof(i++)); printf...
    99+
    2022-11-13
  • C语言中sizeof函数怎么用
    这篇文章给大家分享的是有关C语言中sizeof函数怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一.sizeof 函数简介在 C 语言中,char 字符串也是一种非常重要的数据类型,我们除了使用 sizeo...
    99+
    2023-06-25
  • C语言中的strlen()和sizeof()怎么使用
    这篇文章主要介绍“C语言中的strlen()和sizeof()怎么使用”,在日常操作中,相信很多人在C语言中的strlen()和sizeof()怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C语言中的...
    99+
    2023-07-05
  • C语言中scanf函数的原样输入的坑怎么解决
    这篇文章主要讲解了“C语言中scanf函数的原样输入的坑怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言中scanf函数的原样输入的坑怎么解决”吧!scanf函数的原样输入的坑及...
    99+
    2023-07-02
  • C语言strlen和sizeof在数组中的使用详解
    目录一、前言二、sizeof在二维数组的试题解读:题解:答案验证:64位平台下:32位平台下:一、前言 前面我们详细讲了sizeof和strlen中的使用,基本涉及了所有一维数组可以...
    99+
    2022-11-12
  • C语言中scanf函数的原样输入的坑及解决
    目录scanf函数的原样输入的坑及解决1、scanf函数格式控制后面输入2、scanf函数的输入是有顺序的3、最重要的一点就是scanf切记要原样输入4、还有一个scanf输入多个数...
    99+
    2022-11-13
  • C语言中sizeof怎么在自定义函数中正常工作
    本文小编为大家详细介绍“C语言中sizeof怎么在自定义函数中正常工作”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言中sizeof怎么在自定义函数中正常工作”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。在...
    99+
    2023-06-30
  • C语言中的getchar函数怎么使用
    本文小编为大家详细介绍“C语言中的getchar函数怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言中的getchar函数怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。首先要明确getcha...
    99+
    2023-07-05
  • C语言中的strcpy函数怎么使用
    这篇“C语言中的strcpy函数怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C语言中的strcpy函数怎么使用”文...
    99+
    2023-06-16
  • C语言中的strlen函数怎么使用
    今天小编给大家分享一下C语言中的strlen函数怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。C语言中的字符串函数有...
    99+
    2023-06-16
  • c语言中fabs函数怎么使用
    在C语言中,fabs函数用于计算浮点数的绝对值。它的函数原型如下:cdouble fabs(double x);fabs函数接受一个...
    99+
    2023-10-20
    c语言
  • c语言中fwrite函数怎么使用
    在C语言中,`fwrite`函数用于将指定数量的数据块写入到文件中。函数原型如下:```size_t fwrite(const vo...
    99+
    2023-09-05
    c语言
  • 怎么使用c语言中fgetc函数
    本篇内容主要讲解“怎么使用c语言中fgetc函数”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用c语言中fgetc函数”吧!fgetc函数返回的字符实际上是文件流中位置指针指向的字符。当f...
    99+
    2023-06-25
  • C语言中exit()函数怎么使用
    在C语言中,exit()函数用于终止程序运行并返回退出状态码。它的使用方法如下:1. 在程序中包含stdlib.h头文件:`#inc...
    99+
    2023-09-14
    C语言
  • C语言中函数怎么用
    这篇文章主要为大家展示了“C语言中函数怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“C语言中函数怎么用”这篇文章吧。函数函数定义百度百科对函数的定义:子程序在计算机科学中,子程序是一个大型...
    99+
    2023-06-25
  • 怎么理解C语言中的time函数
    本篇内容介绍了“怎么理解C语言中的time函数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!编程中经常用到时间表达及转换的函数,它们都定义在...
    99+
    2023-06-03
  • C语言的system函数怎么使用
    这篇“C语言的system函数怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C语言...
    99+
    2022-10-19
  • C语言的fread函数怎么使用
    C语言的fread函数用于从文件中读取数据。它的原型如下:```csize_t fread(void *ptr, size_t si...
    99+
    2023-08-09
    C语言 fread
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作