C和for循环

C和for循环,c,for-loop,fread,C,For Loop,Fread,我正在寻找文件中的某个位置,以获取条目计数(它告诉我们执行for循环的时间)。我可以这样做吗?我对C有点陌生,所以请对我放松任何输入都是有价值的。请不要给我一个工作程序,只要告诉我for循环的条件是否有效,如果无效,我如何可能修复它。我们可以使用fread提供的entryCount=40示例 课程代码: unsigned char buffer[8] fseek (file to position where entry count is); entryCount = fread (buffer

我正在寻找文件中的某个位置,以获取条目计数(它告诉我们执行for循环的时间)。我可以这样做吗?我对C有点陌生,所以请对我放松
任何输入都是有价值的。请不要给我一个工作程序,只要告诉我for循环的条件是否有效,如果无效,我如何可能修复它。

我们可以使用fread提供的
entryCount=40
示例

课程代码:

unsigned char buffer[8]
fseek (file to position where entry count is);
entryCount = fread (buffer, sozeof(buffer), 1, in);
// cound i just fread(**entryCount**, sizeof(buffer), 1, in); ?

for ( x = 0; x < entryCount; x++ ) {
// execute code as many time is stored in "entryCount"
}

continue script ect
无符号字符缓冲区[8]
fseek(输入计数所在位置的文件);
entryCount=fread(缓冲区,sozeof(缓冲区),1,in);
//我能不能把(**entryCount**,sizeof(buffer),1,in)?
对于(x=0;x
感谢您的查找和宝贵意见

几乎正确:

  • 您需要对x(或任何变量)有一个int声明
  • 更多的建议-‘i’通常用于循环变量

    for (int i = 0; i < entryCount; i++ ) {
      // execute code as many time is stored in "entryCount"
    }
    
    for(int i=0;i

  • 好吧,这是伪代码,我明白了,但你真的试过什么吗?您是否尝试读取错误消息?你在谷歌上搜索过用C语言打开/关闭/读取/写入文件吗?是的,我可以打开一个文件,然后读取和打开另一个文件,然后写入,我只是想了解有关for循环的一些想法,以及变量是否可以传递给for循环中的condition语句。我用perl编写了一个使用这个循环的程序,但是perl比C更灵活。如果您的问题是如何循环entryCount次,那么for循环看起来还可以。请注意,x的值是
    0..eC-1
    ,因此它对于数组索引很有用。如果你需要
    1..eC
    ,你可以写
    for(x=1;x太棒了,这正是我需要知道的,关于fread的另一个问题,我可以做一些类似fread的事情(entryCount,sozeof(buffer),1,in);或者我需要做一些类似entryCount=fread(buffer,sozeof(buffer),1,in)的事情吗;然后进入forloop,使用entryCount“i”是一个古老的传统,可以追溯到FORTRAN时代,在FORTRAN中,i到N个变量名的第一个字母将它们声明为整数。请尝试对变量使用更具描述性的名称(例如
    )。让程序员/维护人员更容易理解代码比简短更重要。int entryCount=fread(buffer,sozeof(buffer),1,in);将是正确的做法it@PhilPerry:是的,但在泛型循环中,无论是表示迭代器/索引还是旧的FORTRAN编程传统,都使用i。x、y、row、col用于坐标或基于位置的循环,而这不是基于位置或坐标。在数学中,我们使用x的唯一原因也是传统,因此i d我不明白你的意思。在这种情况下,我会使用“I”,因为这只是一个临时变量,更具描述性的变量应该用于更重要的变量。