PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
C_and_CPP
[问题] struct array传递问题
楼主:
cozychocolat
(chocolate)
2018-01-10 03:02:48
开发平台(Platform): (Ex: Win10, Linux, ...)
Windiw 7
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
CodeBlock
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
none
问题(Question):
我想要将一个结构阵列传进副程式
并在副程式当中作一些判断
但是当我传入并想做一些简单的测试时
就发生错误了
希各位大大能帮忙解惑
感恩
错误结果(Wrong Output):
错误资讯
no match for 'operator[]' (operand types are 'Maze' and 'int')
程式码(Code):(请善用置底文网页, 记得排版)
https://ideone.com/LE97Ei
补充说明(Supplement):
我 Maze maze[x+1][y+1] 的这种方式好像也不是很好
是否可教我改写
作者:
steve1012
(steve)
2018-01-10 03:41:00
和不用 vector<vector<maze>>
作者:
kzeratal
(Kz)
2018-01-10 04:04:00
二维阵列是两个星星
作者:
chuegou
(chuegou)
2018-01-10 08:42:00
用指标传
作者:
Killercat
(杀人猫™)
2018-01-10 09:53:00
也许当初语法糖这东西真的害人不浅 XD
作者:
loveflames
(咕啾咕啾魔法阵)
2018-01-10 15:10:00
如果不用STL,可以传阵列的reference随机输入就不是严格意义的阵列了,请用vector
作者:
steve1012
(steve)
2018-01-10 16:46:00
虽然不知道你到底想要做啥 不过会动的code
https://ide
one.com/Cq75my
作者:
idiont
(supertroller)
2018-01-10 21:52:00
传array的时候只有最高维可以不用知道大小
作者:
loveflames
(咕啾咕啾魔法阵)
2018-01-10 22:11:00
因为那个实际上不是传阵列,只是传指标
作者:
dzwei
(Cout<< *p << \n ;)
2018-01-13 02:11:00
你函数宣告要写成void check_consistent(struct Maze (* maze)[10],int y){ ... }那个10是maze[a][b]里面的b,也就是array外层的大小参考本版C++新手13戒的第12条之所以要写成struct Maze (* maze)是因为没有那个括号的话就会变成(struct Maze *) maze两者意义完全不一样还有,我觉得check_consistent(maze, x, y);应该要放在for里面其实前面x,y,num..那些没有给初值,其实很危险一样参考本版教条的第一条
作者:
hunandy14
(Charlott.HonG)
2018-01-24 11:34:00
真要传多多维度的不定阵列,可以用样板
https://ideone.com/M2JW64
总体来说还是跟上面大大一样,建议用vector省事~
继续阅读
[问题] fscanf 读txt
rkwhy
[问题] Recommended C coding standards 6ed(已补上)
zzss2003
[问题] CUDA现在可以用A[i][j]来存取了吗
snow3804
[问题] 有关class的一个问题
ahabook
[问题] C 读取未知数量档案问题
j0958322080
[社群] RemakeAON 信长重制
damody
[问题] 指标与阵列
bottlekk
[问题] linklist+segmentation fault
eecheng87
[问题] HackerRank - 阵列的相关问题
qazkevin
[问题]openCV 摄影机无法输出
zxcv40711
Links
booklink
Contact Us: admin [ a t ] ucptt.com