alloca函数的风险_alloca的函数范围中的goto是否有效?

实际上,规则6.8.6.1规定:

A goto statement is not allowed to jump past any declarations of objects

with variably modified types.

在您的代码中,不存在具有可变修改类型的对象. alloca不声明对象(编译器必须关注).因此,没有类似于alloca的范围,并且没有理由在规则6.8.6.1的意义上存在未定义的行为.

编辑

稍微详细说明答案:VLA情况下行为的“不确定性”是由于承诺声明对象在其范围内(在语言级别)“已知”.通常,声明为代码执行设置上下文.它不需要在运行时执行.但是,在VLA的情况下不是这样:这里的承诺部分在运行时实现,打破了C的静态声明方法.为了避免导致动态类型系统的进一步冲突,规则6.8.6.1避免了这种冲突.

相反,在语言层面,alloca只是一个函数;它的电话不构成任何范围.在调用它时,它只对其运行时行为做出承诺.如果它没有被调用,我们不会“期望”任何函数.因此,它的纯粹存在不会引起任何冲突:两种情况(绕过或不绕过)都有明确定义的语义.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/464796.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

atoi()

atoi():将一个字符串转换为int型数 int atoi(const char *str) {assert(NULL ! str);int num0, sign1;while (*str || *str \t){str;}if (*str -){sign-1;str;}else if (*str ){sign1;str; }while (*str ! \0){if ((*str > 0) && (*str …

矩阵的变换。包括缩放、平移、错切

矩阵的变换。包括缩放、平移、错切-the transformation matrix. Incl...原文链接 #include<graphics.h>#include<math.h>typedef struct Matrix{float _a11,_a12,_a13;float _a21,_a22,_a23;float _a31,_a32,_a33;} Matrix;typedef struct Vert3{float x;float y;f…

关于Treap的学习感受

好了我就很愉快的回来补坑了~ Treap也是一种平衡树&#xff0c;它较普通二叉查找树而言&#xff0c;每个节点被赋予了一个新的属性&#xff1a;优先级&#xff08;没错就是类似优先队列的优先&#xff09;&#xff0c;对于Treap中的每个结点&#xff0c;除了它的权值满足二叉查…

2022年考研结束了

为期两天的研究生考试结束了。我没参加研究生考试&#xff0c;所以对研究生考试的压力不从得知&#xff0c;我从一个外人的角度来看&#xff0c;这无非就是一个简单的考试&#xff0c;考上了欢喜雀跃&#xff0c;考不上嘛&#xff0c;我就会说&#xff0c;大不了来年再考一次&a…

挂“洋头”卖奶粉,澳优还要欺骗好久

澳优奶粉近期被质疑非进口产品&#xff0c;公司总部实为湖南一家贴牌商。该奶粉生产商澳优乳业公司回应称其为“国外产品与本国品牌相结合”的国际化企业。但奶粉包装仍被质疑误导消费者&#xff0c;且售价偏高&#xff0c;澳优方称“与其高端品质相比只属于中上水平”&#xf…

DefWindowProc

简介 函数功能&#xff1a;该调用DefWindowProc函数时使用窗口过程接收的相同参数。函数原型&#xff1a;LRESULT DefWindowProc&#xff08;HWND hWnd&#xff0c;UINT Msg&#xff0c;WPARAM wParam&#xff0c;LPARAM IParam&#xff09;&#xff1b;功能 DefWindowProc这个…

mysql通过局域网访问数据库_MySQL数据库之局域网内访问同一个mysql数据库

本文主要向大家介绍了MySQL数据库之局域网内访问同一个mysql数据库 &#xff0c;通过具体的内容向大家展现&#xff0c;希望对大家学习MySQL数据库有所帮助。局域网内访问同一个mysql数据库。一、运行cmd&#xff0c;输入mysql -u root -p。二、输入mysql数据库密码&#xff0c…

排序算法之冒泡排序(C/C++)

冒泡法排序&#xff1a;平均时间复杂度O(n*n) 最差时间复杂度O(n*n) 比较相邻的元素。如果第一个比第二个大&#xff0c;就交换他们两个。对每一对相邻元素作同样的工作&#xff0c;从开始第一对到结尾的最后一对。在这一点&#xff0c;最后的元素应该会是最大的数重复以上工…

约翰·冯·诺依曼:一个向上帝买了挂的男人!!

来源|David 小咸鱼/新智元约翰冯诺依曼是20世纪最有影响力的人物之一。从原子弹&#xff0c;到计算机、再到量子力学、气候变化&#xff0c;你可能很难再找出像这样对我们今天的世界和生活影响更大的科学家了。在20世纪的天才中&#xff0c;有几个杰出的人物&#xff1a;爱因斯…

mysql pdo prepare_PDO::prepare

PDO::preparePDO::prepare — 准备要执行的SQL语句并返回一个 PDOStatement 对象(PHP 5 > 5.1.0, PECL pdo > 0.1.0)说明语法public PDOStatement PDO::prepare ( string $statement [, array $driver_options array() ] )为 PDOStatement::execute() 方法准备要执行的S…

使用webpack配置react并添加到flask应用

学习react&#xff0c;配置是很痛苦的一关&#xff0c;虽然现在有了create-react-app这样方便的工具&#xff0c;但是必须要自己配置一遍&#xff0c;才能更好地进行项目开发。 首先要明确一个概念&#xff1a;react的文件必须经过编译才能被浏览器识别&#xff0c;因此我们需要…

POJ 2976 Dropping Tests

http://poj.org/problem?id2976 题目大意&#xff1a;给定n个二元组(a,b)&#xff0c;扔掉k个二元组&#xff0c;使得剩下的 最大。 这两天一直在搞分数规划&#xff0c;有了前两道题&#xff08;3621、2728&#xff09;&#xff0c;这道题就是完完全全的大水题了。 设 r100…

回调函数这个是什么鬼?

这是一个同学在微信给我提问的问题。要搞清楚回调函数&#xff0c;我们首先要搞清楚函数&#xff0c;函数其实就是一个地址&#xff0c;这个地址描述了这个函数在内存中的位置。但是函数和变量也是一样的&#xff0c;有类型&#xff0c;对变量来说&#xff0c;变量会分成各种类…

一个整数转换成字符串(C/C++自己写的算法)

自己写的一个算法&#xff1a;将一个int型数转换为string char *itoa(int num, char *str){assert(NULL ! str);int i1, j0;if (num < 0){str[j]-;num (-1)*num;}if (0 num){str[j] 0;str[j] \0;return str; }while (! (num/i < 10)){i i*10;}while (num > 0){st…

mysql模糊查询与预编译_mysql预编译模糊查询恶心了我一天的时间,终于弄好了。但是还有一点不明白。如下:...

不用这么麻烦&#xff0c;你可以定义个boolean的变量&#xff0c;用来记录传参是不是description&#xff0c;如果是&#xff0c;在paramList的循环里做模糊拼接&#xff0c;不是&#xff0c;就不用boolean descFlagfalse; //标记传来的参数是否为description&#xff0c;为后面…

小米12比我的小米10还便宜

昨天晚上&#xff0c;小米发布会发布了新的小米12手机&#xff0c;价格很亲民&#xff0c;比我两年前买的小米10还便宜。这还不算&#xff0c;小米12比小米10还更好看。小米在尝试曲面屏之后&#xff0c;终于觉得曲面屏不再是一个可以用来炫耀的卖点了。我自己的小米10曲面屏&a…

庆祝51CTO六周年:资源牛人有奖比拼,生日当天疯狂送豆!(已结束)

2011年8月15日&#xff0c;是51CTO成立6周年的日子。为庆祝这一盛典&#xff0c;特推出此活动。一、活动时间&#xff1a;2011年8月5日——2011年8月25日 24:00二、活动奖项及规则&#xff1a;1、资源牛人金奖&#xff1a;入围资源牛人排行榜前十名的Down友已经产生&#xff0c…

Centos7:mysql5.6安装,配置及使用(RPM方式)

1.首先安装好jdk环境,本机所用环境为jdk1.8 2.卸载MariaDB(Centos7自带)与Mysql 2.1卸载:MariaDB #rpm -qa | grep -i mariadb //查询安装的MariaDB#rpm -e --nodeps 查到软件名 //卸载相关MariaDB的所有软件#find / -name mariadb#whereis mariadb //查找是否有相关配置目录及…

判断一个单链表中是否存在环

#判断一个单链表中是否存在 环。 #设置两个指针(fast, slow)&#xff0c;初始值都指向头&#xff0c;slow每次前进1步&#xff0c;fast每次前进2步&#xff0c; 大概的思路如下&#xff1a; 如果链表存在环&#xff0c;则fast必定先进入环&#xff0c;而slow后进入环&#xff…

mysql3.5 所有表_mysql学习笔记3.5

紧接着笔记3的训练介绍一个对于我来说的比较难的难点&#xff01;&#xff01;&#xff01;&#xff01;select * from sc;select student.sno,sname,avg(grade) as平均分fromstudent,scwhere student.snosc.snogroup bystudent.snohaving avg(grade)>90/*这一个条件我竟然忘…