草庐IT

再见了,我的C!

syseptember 2023-08-23 原文

本人的第一篇博客发布于1月份,现在已经4月份了,历时3个月,,已经将C语言涵盖的大多数C语言知识点系统性的整理了出来,在这个期间自己收获了很多,这是C语言的最后一篇文章,接下来我们来回顾一下我们是如何学习C语言的

  1. C语言是我们学习的第一门语言,在此之前,我们对计算机语言一窍不通,所以下三篇文章让我们对C语言有了初步的了解
    初始C语言1->第一个C语言程序、变量、常量
    初始C语言2->字符、注释、程序的三种结构、函数、数组
    初始C语言3->操作符、关键字、#define、指针、结构体
  2. 接着我们对每一个知识点进行了更加详细的探讨
    我们最开始学的是程序的结构
    分支结构
    循环结构
  3. 学习了程序的结构后,我们接着学习了数组、这是C语言自定义类型的一种,通过数组我们可以存储一连串具有相同性质的数据
    详解C语言数组
  4. 学习完数组后,我们认为如果一个函数中所有代码全部集中在主函数内,那么主函数可读性是非常大的,这个时候使用适当的函数可以单独抽象出具有某个特定功能的代码,我们将它们取名为函数
    详解C语言函数
  5. 再学习函数中,函数的重难点是递归,于是我们写了两道递归的经典问题
    汉诺塔问题
    青蛙跳台阶
  6. 在详细了解数组和函数后,我们实现了两个项目来巩固对知识的理解
    详解三子棋
    详解扫雷
  7. 再了解前面知识时,或多或少我们接触到了各种操作符,于是下面我们对这些操作符做出了详细的归纳总结
    详解操作符
  8. 接下来我们开始学习了C语言的重难点:指针。进一步了C语言变量的属性
    初阶指针
  9. 基本变量类型都只具有某一种属性,但是生活中很多事情具有多种属性,所以我们学习了C语言的另外一种自定义类型:结构体
    C语言结构体初阶
  10. 以上我们将C语言所有基础知识点涉及到,在进行更详细的探讨时我们对如何编写C高质量语言代码做出了解释以及对如何使用VS编译器调试代码做出了说明
    调试VS2019

接下来我们对C语言进行了更加深入的探讨
11. 我们之前一直都不清楚C语言中的数据在内存中是如何存放的,所以接下来我们对C语言数据存储进行了总结
数据的存储
12. 接下来我们再次回到C语言的重中之重:指针。这次我们对指针进行了本质上的分析和指针扩展出来的各种类型进行说明
指针进阶
13. 在指针进阶中我们提出了回调函数,这是回调函数的一个使用
模拟实现万能排序
14. 彻底学习完指针后,我们将指针和数组进行了对比
指针数组练习题
15. 接下来我们学习了C语言中的字符串、内存函数
字符串函数
内存函数
16. 接着我们对C语言的结构体进行了拓展并且引出其他自定义类型
C语言自定义类型
17. 在学习完自定义类型后,我们实现了一个通讯录,此时通讯录的大小是固定的并且不能保存
静态通讯录
18. 为了实现动态通讯录,我们学习了与动态内存有关的知识,并且这使我们对C语言内存机制有更加深刻的了解
动态内存管理
动态通讯录
19. 为了将通讯录保存在文件中,我们又学习了文件操作
文件操作1
文件操作2
文件包通讯录
20. 学习完之后我们对C程序的运行环境进行了简要探讨,这也是C语言的最后一篇内容
C程序的运行环境
程序运行的第一步:
预处理详解


革命尚未结束,同志仍需努力

有关再见了,我的C!的更多相关文章

  1. ruby-on-rails - 如何在我的 Rails 应用程序 View 中打印 ruby​​ 变量的内容? - 2

    我是一个Rails初学者,但我想从我的RailsView(html.haml文件)中查看Ruby变量的内容。我试图在ruby​​中打印出变量(认为它会在终端中出现),但没有得到任何结果。有什么建议吗?我知道Rails调试器,但更喜欢使用inspect来打印我的变量。 最佳答案 您可以在View中使用puts方法将信息输出到服务器控制台。您应该能够在View中的任何位置使用Haml执行以下操作:-puts@my_variable.inspect 关于ruby-on-rails-如何在我的R

  2. ruby - 我可以将我的 README.textile 以正确的格式放入我的 RDoc 中吗? - 2

    我喜欢使用Textile或Markdown为我的项目编写自述文件,但是当我生成RDoc时,自述文件被解释为RDoc并且看起来非常糟糕。有没有办法让RDoc通过RedCloth或BlueCloth而不是它自己的格式化程序运行文件?它可以配置为自动检测文件后缀的格式吗?(例如README.textile通过RedCloth运行,但README.mdown通过BlueCloth运行) 最佳答案 使用YARD直接代替RDoc将允许您包含Textile或Markdown文件,只要它们的文件后缀是合理的。我经常使用类似于以下Rake任务的东西:

  3. jquery - 我的 jquery AJAX POST 请求无需发送 Authenticity Token (Rails) - 2

    rails中是否有任何规定允许站点的所有AJAXPOST请求在没有authenticity_token的情况下通过?我有一个调用Controller方法的JqueryPOSTajax调用,但我没有在其中放置任何真实性代码,但调用成功。我的ApplicationController确实有'request_forgery_protection'并且我已经改变了config.action_controller.consider_all_requests_local在我的environments/development.rb中为false我还搜索了我的代码以确保我没有重载ajaxSend来发送

  4. java - 我的模型类或其他类中应该有逻辑吗 - 2

    我只想对我一直在思考的这个问题有其他意见,例如我有classuser_controller和classuserclassUserattr_accessor:name,:usernameendclassUserController//dosomethingaboutanythingaboutusersend问题是我的User类中是否应该有逻辑user=User.newuser.do_something(user1)oritshouldbeuser_controller=UserController.newuser_controller.do_something(user1,user2)我

  5. ruby-on-rails - 测试我的 Ruby gem:Shoulda::Matchers:Module (NoMethodError) 的未定义方法 `configure' - 2

    我正在开发我的第一个Rubygem,并捆绑了cucumber、rspec和shoulda-matches进行测试。当我运行rspec时,出现以下错误:/app/my_gem/spec/spec_helper.rb:6:in`':undefinedmethod`configure'forShoulda::Matchers:Module(NoMethodError)这是我的gem规范:#my_gem.gemspec...Gem::Specification.newdo|spec|......spec.add_development_dependency"activemodel"spec.a

  6. ruby-on-rails - Heroku 吃掉了我的自定义 HTTP header - 2

    我正在使用Heroku(heroku.com)来部署我的Rails应用程序,并且正在构建一个iPhone客户端来与之交互。我的目的是将手机的唯一设备标识符作为HTTPheader传递给应用程序以进行身份​​验证。当我在本地测试时,我的header通过得很好,但在Heroku上它似乎去掉了我的自定义header。我用ruby​​脚本验证:url=URI.parse('http://#{myapp}.heroku.com/')#url=URI.parse('http://localhost:3000/')req=Net::HTTP::Post.new(url.path)#boguspara

  7. ruby - 我的 Ruby IRC 机器人没有连接到 IRC 服务器。我究竟做错了什么? - 2

    require"socket"server="irc.rizon.net"port="6667"nick="RubyIRCBot"channel="#0x40"s=TCPSocket.open(server,port)s.print("USERTesting",0)s.print("NICK#{nick}",0)s.print("JOIN#{channel}",0)这个IRC机器人没有连接到IRC服务器,我做错了什么? 最佳答案 失败并显示此消息::irc.shakeababy.net461*USER:Notenoughparame

  8. ruby-on-rails - rspec - 我怎样才能让 "pendings"有我的文本而不仅仅是 "No reason given" - 2

    我有这个代码:context"Visitingtheusers#indexpage."dobefore(:each){visitusers_path}subject{page}pending('iii'){shouldhave_no_css('table#users')}pending{shouldhavecontent('Youhavereachedthispageduetoapermissionic错误')}它会导致几个待处理,例如ManagingUsersGivenapractitionerloggedin.Visitingtheusers#indexpage.#Noreason

  9. ruby - 为什么 return 关键字会导致我的 'if block' 出现问题? - 2

    下面的代码工作正常:person={:a=>:A,:b=>:B,:c=>:C}berson={:a=>:A1,:b=>:B1,:c=>:C1}kerson=person.merge(berson)do|key,oldv,newv|ifkey==:aoldvelsifkey==:bnewvelsekeyendendputskerson.inspect但是如果我在“ifblock”中添加return,我会得到一个错误:person={:a=>:A,:b=>:B,:c=>:C}berson={:a=>:A1,:b=>:B1,:c=>:C1}kerson=person.merge(berson

  10. ruby-on-rails - 为什么用户必须输入 7 位数的 Twitter PIN 才能授予我的应用程序访问权限? - 2

    我正在为我的用户实现一些ruby​​onrails代码推特内容。我正在创建正确的oauth链接...类似http://twitter.com/oauth/authorize?oauth_token=y2RkuftYAEkbEuIF7zKMuzWN30O2XxM8U9j0egtzKv但在我的测试帐户授予对twitter的访问权限后,它会弹出一个页面,上面写着“您已成功授予对.我不知道用户应该在哪里输入此PIN以及他们为什么必须这样做。我认为这不是必要的步骤。Twitter应该将用户重定向到我在应用程序设置中提供的回调URL。有谁知道为什么会这样?更新我找到了thisarticle声明我需

随机推荐