是否有差异++i,并i++在一个for循环?它只是一个语法的东西吗?
我想为SO准备一些教育工具,这应该有助于初学者(和中级)程序员识别和挑战他们在C,C++及其平台中的无根据的假设.
例子:
我认为可以在各种平台上运行一个小型测试程序,它运行"合理的"假设,根据我们在SO中的经验,通常是由许多缺乏经验/半经验的主流开发人员制作的,并记录他们在各种机器上打破的方式.
这样做的目的不是要证明做某事是"安全的"(这是不可能做到的,测试只有在他们破坏的情况下证明了什么),而是向最难以理解的个体展示最不起眼的表达方式如果它具有未定义或实现定义的行为,则在另一台机器上中断..
为此,我想问你:
这是测试玩具的当前版本:
#include <stdio.h>
#include <limits.h>
#include <stdlib.h>
#include <stddef.h>
int count=0;
int total=0;
void expect(const char *info, const char *expr)
{
printf("..%s\n but '%s' is false.\n",info,expr);
fflush(stdout);
count++;
}
#define EXPECT(INFO,EXPR) if (total++,!(EXPR)) expect(INFO,#EXPR)
/* stack check..How can I do this better? */
ptrdiff_t check_grow(int k, int *p)
{
if (p==0) p=&k;
if (k==0) return &k-p;
else return check_grow(k-1,p);
}
#define BITS_PER_INT (sizeof(int)*CHAR_BIT)
int bits_per_int=BITS_PER_INT;
int int_max=INT_MAX; …Run Code Online (Sandbox Code Playgroud) 在javascript中我见过i++在许多情况下使用过,我知道它在前面的值中添加了一个:
for (var i=1; i<=10; i++) {
console.log(i);
}Run Code Online (Sandbox Code Playgroud)
但是当我这样做时会发生什么:
++i;
Run Code Online (Sandbox Code Playgroud)
使用--运算符是否有任何不同(当然除了加法而不是加法)?
这是一系列关于JavaScript中语法的问题.这也是社区Wiki,因此邀请每个人参与维护此列表.
Stack Overflow不允许搜索特定字符.因此,在搜索运算符和其他语法标记时,很难找到许多关于运算符和其他语法标记的问题.这也使得关闭重复更加困难.以下列表是为了解决此问题.
主要思想是在Stack Overflow上链接现有问题,因此我们更容易引用它们,而不是复制ECMAScript规范中的内容.
此外,这是PHP符号引用的公然副本.我们需要一个JS.
请帮忙.编辑并添加指向其他运算符/语法参考的链接,或者如果您无法在特定语法上找到好的问题/答案,请添加此问题的答案并将其链接
是否可以限制setInterval在javascript中触发的次数?
在我学习和改进我的JavaScript的过程中,我遇到了一个带有switch/case语句的脚本,我注意到一些变量在++之前使用带有变量的++递增,然后一些变量在变量之后有++.这些有什么区别?这是我试图解释m和y变量的一个例子.
switch(f){
case 0:{
++m;
if(m==12){
m=0;
y++;
}
break;
}
case 1:{
--m;
if(m==-1){
m=11;
y--;
}
break;
}
case 2:{
++y;
break;
}
case 3:{
--y;
break;
}
case 4:{
break;
}
}
Run Code Online (Sandbox Code Playgroud) 我想查看所选的无线电输入是什么.
这是我的代码.
<input name="u_type" type="radio" value="staff" id="u_type" checked="checked" /> Staff
<input name="u_type" type="radio" value="admin" id="u_type" /> Admin
<input id="add_user" name="add_user" type="button" onclick="addUser();" value="Add" class="submitButton admin_add" />
function addUser()
{
//how to check what is the selected radio input
}
Run Code Online (Sandbox Code Playgroud)
谢谢.
我知道你可以简单地做一个变量i++(假设我是你的变量).在迭代数组或在"for"语句中使用它时,可以最好地看到这一点.找到一些在线使用的代码后,我注意到使用了for语句++i(如同i++).
我想知道是否有任何重大差异,或者两者是否有任何不同的处理方式.
由于JSLint,我几乎总是使用i += 1增加JavaScript for循环,但对于快速和脏脚本,我使用i++.
但是,我在其他人的代码中看到了很多for循环,在这些代码中,他们i通过++i代替来增加.
据我所知,i++和之间没有区别++i,而且jsPref在性能上没有差别.
因此,我想知道做的惯例++i来自哪里以及为什么人们倾向于这样做.
有谁知道为什么很多JS编码器往往喜欢++i在i++一个递增计数器循环什么时候?
谢谢.
这是代码
import React from "react"
let x = 0;
const App = () => {
x++;
console.log(x)
return(
<div>
<p>{x}</p>
</div>
)
}
export default App;
Run Code Online (Sandbox Code Playgroud)
控制台显示 1...但页面显示 2...
函数内部的代码如何执行两次(显然 x++ 运行两次)并且控制台只输出一次(1)
javascript ×8
for-loop ×2
c ×1
c++ ×1
increment ×1
operators ×1
portability ×1
radio ×1
reactjs ×1
selected ×1