在OI的学习中,阅读多种语言的能力是很重要的。

本文就着眼于让大家最快地掌握这两种语言间的转换方法。

程序主结构

C/C++

Pascal

主程序(即开始执行的程序段)和其他函数、过程本质上都属于函数。

过程相当于返回值为空的函数

主程序也是函数,定义为int main()

返回值正常情况下必须为0,函数名必须是main

各个功能分散到了头文件中,用的时候需要引用相关的头文件。

主程序是一个程序的独立部分,不用考虑返回值、命名的问题

函数与过程分开、定义不同

OI中的大部分时候不需要引用库

#include <cstdio>
#include <iostream>
//开头需要调用相关的头文件
int plus(int a,int b) {return a+b;}
//这是一个函数 int main()
{//主程序也是一个函数
printf("%d\n",plus(2,3));
system("pause");
return 0;
}

  

program test;//程序头可以省略
//不需要头文件
function plus(a,b:longint):longint;begin exit(a+b); end;
//这是一个函数 begin//这是主程序
writeln(plus(a+b));
readln;
end.//最后不需要手动return

  

变量定义与类型

C/C++

Pascal

变量可以在程序的几乎任意位置声明。

声明结构 : 变量类型 变量名

变量只能在程序的begin之前,且在函数定义之前定义。

声明结构:var 变量1,变量2:变量类型

#include <cstdio>
#include <iostream>
int plus(int a,int b)
{
int c;
return a+b;
long d;
}

int main()
{
double e;
printf("%d\n",plus(2,3));
system("pause");
return 0;
}

  

program test;//程序头可以省略
//不需要头文件
function plus(a,b:longint):longint;begin exit(a+b); end;
//这是一个函数 begin//这是主程序
writeln(plus(a+b));
readln;
end.//最后不需要手动return

  

Pascal <-> C/C++ 转换简明教程的更多相关文章

  1. Lisp简明教程

    此教程是我花了一点时间和功夫整理出来的,希望能够帮到喜欢Lisp(Common Lisp)的朋友们.本人排版很烂还望多多海涵! <Lisp简明教程>PDF格式下载 <Lisp简明教程 ...

  2. 2013 duilib入门简明教程 -- 部分bug (11)

     一.WindowImplBase的bug     在第8个教程[2013 duilib入门简明教程 -- 完整的自绘标题栏(8)]中,可以发现窗口最大化之后有两个问题,     1.最大化按钮的样式 ...

  3. Java8简明教程(转载)

    ImportNew注:有兴趣第一时间学习Java 8的Java开发者,欢迎围观<征集参与Java 8原创系列文章作者>. 以下是<Java 8简明教程>的正文. “Java并没 ...

  4. ArcGIS Pro 简明教程(4)工具和模型构建器

    ArcGIS Pro 简明教程(4)工具和模型构建器 by 李远祥 工具箱中的工具 ArcGIS Pro 在1.3版本基本上已经继承了ArcMap的所有工具,而且会不断加入一些它自身才有的工具,例如适 ...

  5. ArcGIS Pro 简明教程(1)Pro简介

    ArcGIS Pro 简明教程(1)Pro简介 ArcGIS Pro已经发布了相当的一段时间了,截至笔者写这系列文章的时候已经是1.3版本了,已经是相当完善的一个版本,基本上已经完成了原来ArcGIS ...

  6. Java 简明教程

    本文为 Java 的快速简明教程,主要用于快速了解.学习和复习java的语法特点. // 单行注释 /* 多行注释 */ /** JavaDoc(Java文档)注释是这样的.可以用来描述类和类的属性. ...

  7. 基于R语言的结构方程:lavaan简明教程 [中文翻译版]

    lavaan简明教程 [中文翻译版] 译者注:此文档原作者为比利时Ghent大学的Yves Rosseel博士,lavaan亦为其开发,完全开源.免费.我在学习的时候顺手翻译了一下,向Yves的开源精 ...

  8. VBS简明教程

    VBS简明教程   一.输出 VBS的输出使用函数Msgbox调用对话框进行输出. Msgbox(message) Message为要输出的信息 二.输入 VBS的输入,调用函数Inputbox()进 ...

  9. 2017-2018-2 20179207 《网络攻防技术》python简明教程(1-10)

    Python3简明教程(一) 开始python之旅 使用交互模式的 Python3解释器 简单使用 vim 编写 Python3 脚本 执行 Python3 脚本 Python3 代码风格建议 Pyt ...

随机推荐

  1. hadoop 存储空间满了

    -- ::, WARN mapred.LocalJobRunner - job_local_0001 org.apache.hadoop.util.DiskChecker$DiskErrorExcep ...

  2. js为链接绑定点击事件并且附带return false;来阻止跳转

    <!DOCTYPE HTML> <html> <head> <meta charset="gb2312" /> <title& ...

  3. BZOJ 3956 Count 解题报告

    好点对的个数是\(O(n)\)的,而且我们可以 \(O(n)\) 地求出所有好点对. 我们把这些点对以右端点为关键字从小到大排序,再弄个扫描线,每次把右端点在扫描线上的点对的左端点加入线段树,于是我们 ...

  4. const变量的存储区及修改权限

    转自const变量的存储区及修改权限 [cpp] view plaincopy const int a = 1; int *p = const_cast<int*>(&a); *p ...

  5. 对于 APM 用户的一次真实调查分析(下)

    一.前言 对 APM 用户的一次真实调查分析(上)中,我们主要聊到了现阶段国外 APM 行业对各个企业的渗透率.大部分使用 APM 工具的企业规模以及 APM 工具在用户心中的地位等问题,有兴趣的朋友 ...

  6. 如何使用 Java8 实现观察者模式?(下)

    [编者按]本文作者是 BAE 系统公司的软件工程师 Justin Albano.在本篇文章中,作者通过在 Java8 环境下实现观察者模式的实例,进一步介绍了什么是观察者模式.专业化及其命名规则,供大 ...

  7. CHANGE DEFAULT FTP PORT FOR VSFTP

    http://twincreations.co.uk/change-default-ftp-port-for-vsftp/ http://www.cnblogs.com/kuliuheng/p/320 ...

  8. [jobdu]第一个只出现一次的字符

    刚开始还在想双指针,完全没必要.然后最土的可以扫两遍O(n),用一个数组记录出现次数.然后想到如果数组里记录出现的位置,可以只扫一遍O(n),第二遍扫字符集就行了. #include <iost ...

  9. Linux内核spin_lock与spin_lock_irq分析

    http://blog.csdn.net/zhanglei4214/article/details/6837697

  10. SPRING IN ACTION 第4版笔记-第五章BUILDING SPRING WEB APPLICATIONS-005-以path parameters的形式给action传参数(value=“{}”、@PathVariable)

    一 1.以path parameters的形式给action传参数 @Test public void testSpittle() throws Exception { Spittle expecte ...