百合文库
首页 > 网文

如何用轻小说的方式学C (一) CS部

2023-04-01编程Ccpp 来源:百合文库
XX学园,CS部室内。
“你的汇编过了呢。”
活动部室内,凛音玩弄着自己银色的头发,眨巴着自己金色的眼镜,看到屏幕里不停循环打印显示出“HELLO WORLD”,直到按下键盘的回车键后会停止程序显示“INTERRUPTED”,确认程序正确后凛音高兴地叉着腰转过身来,对着后面似乎有些忐忑的卷着自己亮丽黑发的刹那说到:
“已经可以进入下一关了,真不愧是我的徒弟!”
“欸真的吗?!那下一关是什么?”刹那问到。
“你一直很想学一个高级点的能编程的语言吧,也受了许多苦。”
“嗯嗯!”
“C ,从入门到入坟~”
“嗯嗯!”
听到清脆的一声合上电脑的声音,旁边的久远前辈推了推眼镜发话到:“说重点!”
“呃那我们来复习一下之前讲的东西吧。”凛音提议。
“首先是有关计算机的模型。以后可能会涉及到的部件,以及一个经典的模型。那么刹那你说一下,CPU工作的大致流程。”
“呃...一个经典的CPU结构大致由逻辑部件、寄存器以及控制部件组成吧。”
“这不是重点!”
“那...控制部件本质是一个状态机?就是那种有一个具体状态并且根据不同的输入可以在不同状态间转换的那种?”
“说一下一条指令执行的流程啊!”
“哦哦哦,第一步是取指令?”
“根据程序计数器去内存里面取指令,同时自增。然后呢?”
“第二步是译码。”
“嗯,这一步也会获得寄存器、立即数等信息。”
“第三步是逻辑计算?”
(点点头)
“第四步是访存?”
“可选。因为有的指令是对内存操作嘛。”
“第五步是写回寄存器。”
“嗯,总结下来基本就是会从程序计数器对应的内存上取指令然后执行,然后再轮到下一个指令,一件一件一点一点地运行每一条指令直到停机。很好。”
凛音对自己的徒儿刹那的回答很是满意,嘴角都快挂到天上去了,直到旁边的久远前辈开始读着莫名其妙的文本:
“诶托,在康普特王国里,有着...”
“呜哇不要读那个啊!快点关掉,关掉!”传来凛音的悲鸣。
伴随着刹那侧头的不解,以及久远的坏笑。
“那么,开始学习C 吧。”凛音叹气。
“工欲善其事必先利其器。C 是一个编程语言,所以CPU是肯定不认C 的。”
“诶那怎么办?”
“在康普特王国里,有这么一系列塔,当你咏唱C 魔法之时,塔会反馈...”久远再次在旁边使坏读着凛音的黑历史小说。
“停停停!”凛音抽掉了电源,然后放置没电后愤愤不平的久远前辈。
“需要使用编译器,将你的‘高级程序’转换为低级的可执行程序。”
“可执行文件?”
久远再次插话:“外塔会接受你的魔法并反馈给能用于内塔的更”
凛音一把抢过了久远的手机。
“就是说,编译器能把你一个文本的程序变为操作系统能接受的可执行文件。比如在Windows上面使用Visual Studio集成开发环境(IDE)里的MSVC编译器把一个.cpp的源码程序编译为.exe文件,仅此而已。”
“.cpp的源码?.exe?”
“和汇编一样,.cpp里描述了你希望计算机进行怎样的运算。编译器会生成一个可执行文件,你需要时只需要执行那个生成的.exe文件便能起到你希望的效果。”
(点点头)
“不过既然是我引以为豪的徒弟”
(点点头)
“那么就禁止你使用IDE吧。”
(点点头)
(然后侧头,不解)
TIPS:
程序需要编译器来编译成可执行文件。
C 编译器有许多,不过在Windows上最推荐的果然是微软的Visual Studio集成开发环境(内置MSVC编译器),现在2019应该也出了吧,个人的社区版是免费的。
如果是linux的话,用自带的GCC就行了。
久远从角落里摸出了一个奇妙深刻的小说的备份,重新开始朗读了起来。
“一天,突然有人希望在康普特王国的地标性建筑物的外设大屏幕上显示‘Hello World’,C 女神夕为揽下了任务”
凛音抢过了备份,丢进了旁边的shreder。
“PICKUP Datacube; GIVETO Shreder; LISTEN ‘小说’; PICKUP Kuon; GIVETO Shreder。再让我听到我就把你丢粉碎机里面取了!”
“诶,小气,敢写还不敢让人读。”
“要你管!”
“那么,第一步是先在黑框框里面输出点东西吧。”
“怎么弄?”
hello.cpp:#include<iostream>
int main() {
std::cout<<"Hello, Setsuna~"<<std::endl;
return 0;
}
“然后就是编译。如果是用的VS的话直接Ctrl F5就行,如果是linux下的话就命令行编译吧:”
>> g -o hello hello.cpp
>> ./hello
Hello, Setsuna~
>>
凛音在白板上拿着白板笔龙飞凤舞。
“Windows上实际上也是可以使用GCC的,下载个MinGW就行(Minimum GCC for Windows)。为了锻炼,我们现在把Visual Studio卸载掉吧~”
【初学者最好还是用VS学习吧】
很快,刹那便在一个编辑器内敲完了代码:
#include<iostream>
int mian() {
std::cout《《“Hello, Rinne~”《《std::endl;
return 0;

然后命令行编译,编译器很不友好地给了满屏幕的错误,刹那委屈地转向师傅凛音,很快便被亲切地给大力弹了额头。
捂着额头改错。
---------
【好孩子请好好看看哪些地方有问题,把字母或者标点符号打错了哟】
---------
“吾徒哟,那为师先行离开了。”
“好的,等会我会把钥匙还到办公室去。”
凛音大摇大摆地用会被打断腿的方式跟着久远一起走出了活动部室。刹那继续熟悉打字以及这个最简单的第一个程序。
不得不说,写起来可比自己之前写的汇编好写多了呢。之前的汇编要打印个字符串还要大费周折调用中断。
又敲了一阵键盘后,刹那关闭了电脑。
屏幕在关闭前最后显示着:
“Thanks, My Great Friend Rinne.”

猜你喜欢