将一个函数中的矩阵内容发送到另一函数中的矩阵
如何将一个函数中的 char 矩阵的内容传递到另一个函数中相同维度的另一个矩阵?
How can I pass the contents of a char matrix in one function to another matrix of equal dimensions in another function?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以使用 memcpy 函数复制矩阵内容。
这样,您就可以在 matdup 函数内部使用一个新矩阵。
You can copy the matrix contents the memcpy function.
With this, you can have a new matrix to use inside of the matdup function.
由于您似乎知道矩阵的大小是恒定的,因此任务就像将双指针(此处为 char** )传递给函数一样简单,该函数引用正在传递的矩阵。
但是,如果传递的矩阵的行/列未知,则需要传递维度,因为 C 不会跟踪内存中数组的大小(它们只不过是带有语法糖的指针)。
Since you appear to know that the matrices are of constant size, the task is as simple as passing a double pointer (
char**
here) to the function, which refers to the matrix being passed.You will need to pass the dimensions if the rows/columns of the passed matrix is unknown, however, since C does not track the size of arrays in memory (they are no more than pointers with syntactic sugar).
将指针传递给矩阵中的第一个元素及其大小。
Pass the pointer to the first element in the matrix, and the size.