-
57 votesanswersviews
为什么`int;`在C中编译好,但在C中没编译?
请考虑以下程序(请参阅现场演示here) . #include <stdio.h> int main(void) { int ; // Missing variable name puts("Surprise"); } 我的编译器gcc 4.8.1给出了以下警告: [警告]空声明中无用的类型名称[默认启用] 为什么编译好?我不应该得到... -
430 votesanswersviews
指向数组/指针数组的C指针消歧
以下声明之间有什么区别: int* arr1[8]; int (*arr2)[8]; int *(arr3[8]); 理解更复杂的声明的一般规则是什么? -
180 votesanswersviews
在循环中声明变量,良好实践还是不良实践?
Question #1: 在循环中声明变量是一种好习惯还是坏习惯? 我已经阅读了其他关于是否存在性能问题的线程(大多数说没有),并且您应该始终将变量声明为接近它们将要使用的位置 . 我想知道的是,这是否应该避免或者是否真的是首选 . 例: for(int counter = 0; counter <= 10; counter++) { string someString = "... -
4 votesanswersviews
在Perl中声明循环内部或外部的变量,最佳实践
我've been working on some Perl libraries for data mining. The libraries are full of nested loops for gathering and processing information. I'使用严格模式,我总是在第一个循环之外用 my 声明我的变量 . 例如: # Pretty useless code f... -
1 votesanswersviews
为for循环中的每次迭代声明一个新变量
如何通过for循环的每次迭代声明一个新变量? 例如: for (int i = 1; i <= 4; i++) { int var1 = i; // in the second iteration, I want a variable var2 set to i, etc. } 循环完成后,我想要4个变量,名为 var1 , var2 , var3 和 var4 ,每个变量分别设置... -
0 votesanswersviews
在C 'for'循环中声明用户定义的类类型
以下是与在 for 循环中声明内置类型变量相关的问题: Is there any overhead to declaring a variable within a loop? (C++) Declaring Variables inside Loops, good practice or bad practice? (2 Parter) 但我想缩小这个主题,并询问声明用户定义的类类型... -
10 votesanswersviews
在for循环中声明的变量是否会影响循环的性能?
我已经完成了我的作业并且发现重复保证,无论是在for循环内部还是外部声明变量,它在性能上都没有区别,它实际上编译为完全相同的MSIL . 但是我一直在摆弄它,并发现在循环中移动变量声明确实会导致相当大的一致性能增益 . 我已经编写了一个小型控制台测试类来测量这种效果 . 我初始化一个静态 double[] 数组项,两个方法对它执行循环操作,将结果写入静态 double[] 数组缓冲区 . 最初,我... -
0 votesanswersviews
多个内联声明与重用变量
有一个带有很多嵌套for循环块的过程 . 一个街区看起来像这样 for a := 0 to x do //Do something for b := 0 to x do for c := 0 to a do //Do something 在每个for循环中声明所有循环变量是否有任何惩罚 for var a := 0 to x do for var b := 0... -
3 votesanswersviews
循环中声明的变量会发生什么变化并重复使用[重复]
这个问题在这里已有答案: Can I declare the same variable twice in different for loops in JavaScript? [duplicate] 2个答案 在javascript变量中只有函数作用域 . 所以's either global or it'是一个可以在整个函数中访问的变量,无论它在何处被声明(在函数内) . 我猜最好的做法是... -
-1 votesanswersviews
如何声明变量以将其用于多个IF
我想知道一次声明变量(从If-then-else循环中)或多次声明(在每种情况下)之间的相关差异: 第一种情况(我用这种方式): If A < 0 Then Dim YNC As MsgBoxResult = MsgBox("Select Yes-No-Cancel", vbYesNoCancel, "Select") 'Some co... -
6 votesanswersviews
使用Perl在循环中声明变量
我是Perl的新手,最近生成了以下代码 . 我已对其进行了广泛测试,并返回了所需的结果 . 但是我只是想知道是否有更多Perl经验的人可以就其可用性向我提出建议 . 基本上,我在for循环中声明了一个带有'my'关键字的数组变量 . 然后,我在另一个已在前面提到的for循环之前声明的数组变量中使用此声明的数组变量的地址 . 基本代码结构如下所示: my @Array_of_ALL_Vals; fo... -
4 votesanswersviews
循环内外的变量的多个声明相同
#include <stdio.h> int main() { int i; for ( i=0; i<5; i++ ) { int i = 10; printf ( "%d", i ); i++; } return 0; } 在此变量 i 在 for 循环之外声明,并在 for... -
2 votesanswersviews
在迭代期间保留在循环体中声明的变量吗?
考虑C中的循环,它在循环体中声明一个字符数组 . 在每次迭代时,修改数组的字符,直到到达结尾 . 最后,打印变量 . 描述将扩展到下一个代码: #include <stdio.h> int main(void) { int i = 0; for (;;) {/* same as: while(1) { */ char x[5]; x[i... -
0 votesanswersviews
如何声明先前在包含库中声明的变量而不丢失其属性?
我对于声明属于库的变量的典型方法有疑问 . 例如,使用 getopt.h 库 . 它声明 opterr 和 optarg ,以便它们可以在 getopt() 函数调用之外使用;我认为它们可能对这些变量有不同的声明,具体取决于编译器的实现 . 我尝试了一些可能的解决方案并在Windows gcc中编译它们(包括 <getop.h> 在内的所有解决方案): 以与在/ usr / inc... -
2 votesanswersviews
是否应始终在C中避免变量声明?
有时为了清楚起见,我在代码中声明了“一次使用”变量 . 这是否会显着影响性能,还是编译器可以对其进行优化? 例如,我倾向于: int minVal = long_arithmetic_expresion(); int maxVal = even_longer_expression(); for (int i = minVal; i < maxVal; i++) { ... -
9 votesanswersviews
变量声明是否应该放在循环之外?
声明在循环外部的循环中使用的变量而不是内部更好吗?有时我会看到在循环中声明变量的示例 . 这是否有效地导致程序在每次循环运行时为新变量分配内存?或者.NET足够聪明,知道它真的是同一个变量 . 例如,请参阅下面的代码this answer . public static void CopyStream(Stream input, Stream output) { byte[] buffer... -
0 votesanswersviews
最好在时间优化方面在for循环或外部声明JavaScript Object
编辑:这个问题主要集中在每次迭代中是否应该在for循环(数十亿次数的大循环)中声明对象,或者最好在对象声明期间将对象声明为外循环以节省时间(花费的时间)在内存分配上)在每个sprint中 . 我试图通过确保我不花费任何额外的时间为每次迭代中for循环内声明的对象分配内存来优化我的代码 . 我有一个很长的for循环(比如十亿的顺序),它在每个数组迭代中创建了巨大的对象,并将这些对象推送到数组 . 我... -
0 votesanswersviews
在循环中分配原始数据类型的次数是多少?
这是一个例子: while (i < 10) { int j = 1; string k = "hello."; } j是原始数据类型,k是对象 . 根据Do built-in types have default constructors?, 因此非类类型(包括基本类型,数组类型,引用类型,指针类型和枚举类型)没有构造... -
145 votesanswersviews
我可以同时在VBA中声明和分配变量吗?
我是VBA的新手,想知道我是否可以将以下声明和作业转换为一行: Dim clientToTest As String clientToTest = clientsToTest(i) 要么 Dim clientString As Variant clientString = Split(clientToTest) -
1 votesanswersviews
C#:循环内部的变量声明
以下代码是否正确? foreach (int i in MyList) { MyObject m; } 你能不止一次声明一个变量?