gpt4 book ai didi

c - 你如何制作内存和数据结构的图表?

转载 作者:IT王子 更新时间:2023-10-28 23:36:37 26 4
gpt4 key购买 nike

我必须用 C 语言创建一个处理字符串的短程序,但我总是遇到一些奇怪的指针错误。虽然 K&R 是该语言的一个很好的引用,当我感到困惑时,我经常看它,它已经假设你是一个合格的程序员。

教我们编程的讲师说,优秀的程序员会在这些东西上画出漂亮的图表,但我不知道该怎么做。你能推荐一本关于这方面的好书或讲座吗?

谢谢,我会感谢我得到的每一个答案。

最佳答案

我同意先在纸上绘制它们的建议,然后,如果您觉得需要,可以将它们的 ascii 版本包含到代码中。

我通常使用这三种格式:


推理内存:

      +--------+   0  |        |  <- start      +--------+   1  |        |  <- q  scans from start to end      +--------+      ~  ..... ~      +--------+      |        |  <- end      +--------+  \      |        |  |      +--------+  |__ rest of the      ~  ..... ~  |   allocated memory  n   |        |  |      +--------+ /

推理字符串:

    0               n   +--+-- --+--+--+--+   |  | ... |  |  |\0|   +--+-  --+--+--+--+     ^        ^__ q moves from the     |            end to the start     p moves from       start to the end

推理单词中的位:

   xxxx yyzz 00tt 11ss   \    \ \  \ \  \ \__ storage registry    \    \ \  \ \  \___ always set to 1     \    \ \  \ \_____ temp value      \    \ \  \______ always zeroed        \    \ \________ zero flag value        \    \_________ y register         \_____________ x address            

我以前也为有限状态机做类似的事情,但它们往往过于复杂(而且做起来很耗时),所以我现在直接将 graphviz 代码嵌入到注释中。即使不了解 GraphViz,也应该很容易猜到如何绘制 FSM 图。

digraph G {  mode = hier  LIMBO [style= filled];    node [shape = ellipse];    LIMBO   -> HEADER  ;    HEADER  -> LIMBO;    HEADER  -> TUNE ;    TUNE    -> LYRICS ;    TUNE    -> CHORD [style=dashed ];    TUNE    -> LIMBO ;    GRACE   -> TUNE ;    GRACE   -> CHORD  [style=dashed ] ;    SYMBOLS -> TUNE ;    SYMBOLS -> LIMBO ;    overlap=false  sep = 1.5}

这些涵盖了我需要的绝大多数图表。对于更复杂的,我使用 GraphViz 或 OpenOffice Draw。

关于c - 你如何制作内存和数据结构的图表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/694909/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com