在 for 循环初始化中混合变量类型
在 C 中,可以在 for 循环的初始化部分声明不同数据类型的变量?例如:
for (int i = 0, j = 0; ...
可以修改此语法以初始化整数 (int) 和字符 (char) 吗?如果是这样,这是如何实现的?
答案:
在 for 循环的初始化部分直接声明不同类型的变量是不可能的。然而,有一个技术解决方法,尽管它的实际用法值得怀疑:
for (struct { int a; char b; } s = { 0, 'a' }; s.a < 5; ++s.a) { std::cout << s.a << " " << s.b << std::endl; }
此方法使用结构体来创建具有整数和字符成员的单个实体,从而允许它们同时初始化。
以上是能否在 C for 循环中初始化不同数据类型的变量?的详细内容。更多信息请关注PHP中文网其他相关文章!