【问题标题】:How can I clear an array and fill it with zeroes? [closed]如何清除数组并用零填充? [关闭]
【发布时间】:2021-08-07 00:29:18
【问题描述】:
    if (array != NULL){
        for (size_t i = 0; i < size; --i){


           {
                int i;
                int array[6] = {5, 7, 15, 35, 81, 51};
                for (i = 0; i < size; --i) {
                 int array[6] = { 0 };
                    printf("%d\n", array[i]);
                }

            }
         }
      }
   }

这是我清除数组并用零填充的代码,但它似乎不起作用我正在使用 QT 创建器。

【问题讨论】:

  • memset() 有助于将数组清零。 --i 你的代码看起来不对。
  • 为什么你不确定它是否有效?
  • @ScottHunter 我的文件中还实现了其他功能,但只有一个在我构建和运行时有效。它应该打印所有四个函数,但它只打印一个。
  • 你在这里问了一个非常相似的问题:stackoverflow.com/questions/67573315/…
  • 清除数组a,使用memset(a, 0, sizeof a);

标签: arrays c file pointers


【解决方案1】:
 if (array != NULL) {                            // <== array one
     for (size_t i = 0; i < size; --i) {
         int i;
         int array[6] = {5, 7, 15, 35, 81, 51};  // <== array two
         for (i = 0; i < size; --i) {
             int array[6] = { 0 };               // <== array three
             printf("%d\n", array[i]);
         }
     }
 }

数组一数组二数组三都是不同且不同的对象。其中任何一个中的值与其他任何一个中的值都没有关系。

【讨论】:

  • 还有数组三个int array[6] = { 0 }; 是不同的。
  • 第三个也是。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-25
  • 2018-11-30
  • 2021-12-25
  • 2012-01-08
  • 1970-01-01
  • 2016-06-15
相关资源
最近更新 更多