C语言对"不定长"字符串数组的遍历

作者: goto2091

一般来说,c语言的数组的初始化可以通过三种方式:

,在声明时使用,如 int a[10]=
使用memset, memset(array,0,sizeof(array))
用for循环赋值

C语言的数组可以这样声明,int a[]=,即不用事先计算长度,但是通过初始化的值的数量来自动判断其长度。

另外,对于这种声明方式,便不能用的方法,否则会被自动识别为长度为1的数组,而C语言的数组一旦声明,长度是不能再变化的。

同时,类似于c语言中的字符串数组,c语言中并没有直接计算其长度的函数,所以,一般采用如下的方式:

char * a[] = ;
for(int i = 0; a[i]!=NULL; ++i){
  ...
}

在初始化的数组最后一位加上NULL,这样,当遍历到此位置的时候便可得知已将前面的char*元素遍历完成。

原文创作:goto2091

原文链接:https://www.cnblogs.com/goto2091/p/13770360.html

更多推荐

更多
  • 生成对抗网络项目-八、条件 GAN - 使用条件对抗网络的图像到图像翻译 Pix2pix 是一种生成对抗网络(GAN),用于图像到图像的翻译。 图像到图像转换是一种将图像的一种表示形式转换为另一种表示形式的方法。 Pix2pix 学习从输入图像到输出图像的映射。 ...
  • 生成对抗网络项目-九、预测 GAN 的未来 我们从对 GAN 的简要介绍开始,学习了各种重要概念。然后,我们探索了 3D-GAN,这是一种可以生成 3D 图像的 GAN。 我们训练了 3D-GAN,以生成现实世界对象的 3D ...
  • 生成对抗网络项目-生成对抗网络项目 文章列表,生成对抗网络项目-一、生成对抗网络简介,生成对抗网络项目-七、CycleGAN - 将绘画变成照片,生成对抗网络项目-三、使用条件 GAN 进行人脸老化,生成对抗网络项目-九、预测 GAN 的未来,生成对抗网络项目-二、3D-...
  • 生成对抗网络项目-六、StackGAN - 逼真的文本到图像合成 StackGAN 的架构,StackGAN 是一个两阶段的网络。 每个阶段都有两个生成器和两个判别器。 StackGAN 由许多网络组成,这些网络如下:阶段 1 GAN ...
  • 生成对抗网络项目-七、CycleGAN - 将绘画变成照片 CycleGAN 是一种生成对抗网络(GAN),用于跨域迁移任务,例如更改图像的样式,将绘画转变为照片, 反之亦然,例如照片增强功能,更改照片的季节等等。 CycleGAN 由朱俊彦,Taesung Park,Phillip Isola 和...
  • 生成对抗网络项目-三、使用条件 GAN 进行人脸老化 cGAN 是 GAN 的一种,它取决于一些额外的信息。 我们将额外的y信息作为额外的输入层提供给生成器。 在朴素 GAN 中,无法控制所生成图像的类别。 ...
  • 生成对抗网络项目-五、使用 SRGAN 生成逼真的图像 在本章中,将涵盖以下主题:SRGAN 简介,建立项目,下载 CelebA 数据集,SRGAN 的 Keras 实现,训练和优化 SRGAN 网络SRGAN 的实际应用,SRGAN 简介,与其他 GAN 一样,SRGAN ...
  • 生成对抗网络项目-四、使用 DCGAN 生成动漫角色 在本章中,我们将介绍以下主题:DCGAN 简介,GAN 网络的架构细节,建立项目,为训练准备数据集,DCGAN 的 Keras 实现以生成动画角色,在动漫角色数据集上训练 DCGAN,评估训练好的模型,通过优化超参数优化网络,DCGAN ...
  • 生成对抗网络项目-二、3D-GAN -- 使用 GAN 生成形状 3D 生成对抗网络(3D-GAN)是 GAN 的变体,就像 StackGAN,CycleGAN 和超分辨率生成对抗网络(SRGAN)一样 。 与朴素 GAN 相似,它具有生成器和判别器模型。 这两个网络都使用 3D 卷积层,而不是使用 2D...
  • 生成对抗网络项目-一、生成对抗网络简介 在本章中,我们将研究生成对抗网络(GAN)。 它们是一种深度神经网络架构,它使用无监督的机器学习来生成数据。 他们在 2014 年由 Ian Goodfellow,Yoshua Bengio 和 Aaron Courville ...
  • 近期文章

    更多
    文章目录

      推荐作者

      更多