&variable作为表达式在c中的含义是什么

阿玛克

这是程序代码的片段:

 char authenticated = 0;
 char guard1 = 234;
 char guard2 = 234;
 //more variables initliased...
 char buf[128];

 &authenticated;
 &guard1;
 &guard2;

那么,当引用作为程序代码中的单个表达式站立时,这意味着什么?

编辑:更多上下文:它是在debian服务器上用gcc编译的,并且与一个安全项目有关,在该项目中您可能会溢出buf数组。

templatetypedef

考虑到这是一个安全的项目,我的猜测是,这些声明的目的是阻止编译器优化掉了authenticatedguard1guard2变量。如果以后在函数中不使用这些变量,则兼容的C编译器可以优化它们,从而更改函数调用的堆栈框架的布局。

从技术上讲,由于这些语句没有副作用,因此编译器原则上也可以对其进行优化。但是,我的理解是预期的编译器不会执行此操作(不是它无法执行操作,只是它无法执行操作)。这样,堆栈框架的布局将使用authenticated两个char不是null终止符的值来屏蔽变量,这可能会使覆盖起来有些棘手authenticated当然,听起来您的任务是专门更改的authenticated,所以这不是万无一失的。:-)

希望这可以帮助!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

此正则表达式中\\ +的含义是什么?

来自分类Dev

正则表达式中%s +%的含义是什么?

来自分类Dev

Java中此表达式的含义是什么?

来自分类Dev

表达式a = b!= c的含义是什么?

来自分类Dev

PHP [\ w \-]正则表达式的含义是什么

来自分类Dev

正则表达式(\-?2 | 3)的含义是什么

来自分类Dev

正则表达式^(。)\ 1 + $的含义是什么

来自分类Dev

正则表达式中^和$符号的含义是什么?

来自分类Dev

C中的子表达式是什么?

来自分类Dev

“-”作为布尔表达式的作用是什么

来自分类Dev

尾流操纵器在C ++表达式中的含义

来自分类Dev

在 C++ 中获取表达式的含义

来自分类Dev

什么是在正则表达式“\\ p {}所有”的含义是什么?

来自分类Dev

“ m | = Modifier.PUBLIC”表达式的含义是什么,为什么这样做呢?

来自分类Dev

error = $(mkdir test 2>&1)该表达式的含义是什么?

来自分类Dev

此表达式中int的含义

来自分类Dev

{}表达式的含义

来自分类Dev

什么是C中的子表达式?

来自分类Dev

AngularJS表达式中的$ locals是什么?

来自分类Dev

[^。] *在正则表达式中是什么意思?

来自分类Dev

Ruby正则表达式中的“?-mix”是什么

来自分类Dev

在Linq表达式中=>是什么意思

来自分类Dev

AngularJS中的理解表达式是什么?

来自分类Dev

ggplot()中偏导数的表达式是什么?

来自分类Dev

SQL表达式中的括号是什么意思?

来自分类Dev

catch表达式中的let的目的是什么?

来自分类Dev

在OrderBy中lambda表达式的意义是什么?

来自分类Dev

在Linq表达式中=>是什么意思

来自分类Dev

“ \?”在正则表达式中是什么意思?

Related 相关文章

热门标签

归档