你好, 世界

 
--1-- 语言的编写准备
1.1 C语言源文件的编译执行过程
1.2 常见文件的拓展名
1.3 常用的命令行指令
1.4 环境及运行方法
--2--编写代码
2.1练习
--3-- 你好
3.1  你好, 世界
---------------------------------
 
 

【写在开头:】

  “Hello World”示范程序最早出现于1972年,由贝尔实验室成员布莱恩·柯林汉撰写的内部技术文件《"A Tutorial Introduction to the Language B" 》之中。不久,同作者于1974年所撰写的《Programming in C: A Tutorial》,也延用这个示例;而布莱恩·柯林汉和丹尼斯·里奇以本文件扩编改写的《C程序设计语言》也保留了这个示范程序,此后广泛流传。

 《"A Tutorial Introduction to the Language B" 》中的”hello, world“示范程序:

main(){ extrn a,b,c; putchar(a); putchar(b); putchar(c); putchar(‘!*n‘); }a ‘hell‘;b ‘o, w‘;c ‘orld‘;

hello, wold

--1-- 语言的编写准备

1.1 C语言源文件的编译执行过程

编译执行过程大致分为三个部分:编译->链接->执行

  • 编译:生成目标代码,目标代码是在目标机器上运行的代码。
  • 连接:将目标代码与C函数库相连接,并将源程序所用的库代码与目标代码合并,并形成最终可执行的二进制机器代码(程序)。
  • 执行:在特定的机器环境下运行C程序。

流程如下图:

1.2 常见文件的拓展名

  • .c是C语言源文件,在编写代码的时候创建
  • .o是目标文件,在编译成功的时候产生
  • .out是可执行文件,在链接成功的时候产生

1.3 常用的命令行指令

  • 编译:cc  –c  xxx.c
  • 链接:cc  xxx.o
  • 编译、链接:cc  xxx.c
  • 运行可执行文件:./a.out

1.4 环境及运行方法

编写环境:

  Mac系统下的Xcode

创建项目:

  

运行方法:

  Command + r

--2--编写代码

2.1 练习

编写C函数,至少用2中方式输出如下图形

****************

***    itcast       ***

****************

两种方式

/**
* 单行打印
*/
void exercisesOne(){
printf("*******\n**itcast**\n*******");
} /**
* 多行打印
*/
void exercisesTwo(){
printf("*******\n");
printf("**itcast**\n");
printf("********\n");
}

--3-- 你好

3.1  你好, 世界

int main(int argc, const char * argv[]) {
// insert code here...
printf("Hello, World!\n"); //发送消息
return 0;
}

return:

【写在结尾:】

  计算机、程序、代码、流程、架构、语言,听到这些的时候我以前总觉得他们是单调的、生硬的,死板的... 一个程序,从A到B单调乏味的执行完成,也就只是从A到B而已。

  而我现在却期待着程序背后的故事,以及讲这个故事的人。因为故事本身,就是生命。

  

  计算机没有情感,但是语言却是表达情感的一种方式。

  学习编程的过程是单调、乏味、寂寞的,却也是美好的。

我向一个没有生命的计算机发送一行行单调的指令,期待着它能给我一个我有生命的回应。

它一如预见,回复的,是一个冰冷的结果:

int main(int argc, const char * argv[]) {

    printf("hello, world");

    return ;
}

  这个结果冰冷,却仿佛穿越了44年...

C语言-Hello, world的更多相关文章

  1. C语言 · 高精度加法

    问题描述 输入两个整数a和b,输出这两个整数的和.a和b都不超过100位. 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储.对于这种问题,一般使用数组来处理. 定义一个数组A ...

  2. Windows server 2012 添加中文语言包(英文转为中文)(离线)

    Windows server 2012 添加中文语言包(英文转为中文)(离线) 相关资料: 公司环境:亚马孙aws虚拟机 英文版Windows2012 中文SQL Server2012安装包,需要安装 ...

  3. iOS开发系列--Swift语言

    概述 Swift是苹果2014年推出的全新的编程语言,它继承了C语言.ObjC的特性,且克服了C语言的兼容性问题.Swift发展过程中不仅保留了ObjC很多语法特性,它也借鉴了多种现代化语言的特点,在 ...

  4. C语言 · Anagrams问题

    问题描述 Anagrams指的是具有如下特性的两个单词:在这两个单词当中,每一个英文字母(不区分大小写)所出现的次数都是相同的.例如,"Unclear"和"Nuclear ...

  5. C语言 · 字符转对比

    问题描述 给定两个仅由大写字母或小写字母组成的字符串(长度介于1到10之间),它们之间的关系是以下4中情况之一: 1:两个字符串长度不等.比如 Beijing 和 Hebei 2:两个字符串不仅长度相 ...

  6. JAVA语言中的修饰符

    JAVA语言中的修饰符 -----------------------------------------------01--------------------------------------- ...

  7. Atitit 项目语言的选择 java c#.net  php??

    Atitit 项目语言的选择 java c#.net  php?? 1.1. 编程语言与技术,应该使用开放式的目前流行的语言趋势1 1.2. 从个人职业生涯考虑,java优先1 1.3. 从项目实际来 ...

  8. 【开源】简单4步搞定QQ登录,无需什么代码功底【无语言界限】

    说17号发超简单的教程就17号,qq核审通过后就封装了这个,现在放出来~~ 这个是我封装的一个开源项目:https://github.com/dunitian/LoTQQLogin ————————— ...

  9. InstallShield 脚本语言学习笔记

    InstallShield脚本语言是类似C语言,利用InstallShield的向导或模板都可以生成基本的脚本程序框架,可以在此基础上按自己的意愿进行修改和添加.     一.基本语法规则      ...

  10. 用C语言封装OC对象(耐心阅读,非常重要)

    用C语言封装OC对象(耐心阅读,非常重要) 本文的主要内容来自这里 前言 做iOS开发的朋友,对OC肯定非常了解,那么大家有没有想过OC中NSInteger,NSObject,NSString这些对象 ...

随机推荐

  1. 基于apache的tomcat负载均衡和集群配置session共享

    接上面的话题接着继续完善.为什么没接到上篇呢?原因很简单太长的文章不爱看!就像有人写了上千行的方法一样,不是逼得没办法谁爱看谁看,反正我不看. 期间我没有一次配置成功,从失败的开始说起, 1.准备ja ...

  2. 过滤关键字防止XSS攻击

    public static string ClearXSS(string str) { string returnValue = str; if (string.IsNullOrEmpty(retur ...

  3. PHP while使用

    $i = 0; while(true){ if($i == 0){ $i++; continue; }else if($i > 10){ break; }else{ echo $i." ...

  4. Glide请求图片能携带Cookie的哟!

    在Web编程中我们都很熟知一个概念,当有了seesion登录状态时,你可以访问一些资源但如果你没有登录的话很多资源是无法访问的. 在android的WebApi中当然一样拥有这个概念.比如,用户的头像 ...

  5. 设置glassfish开启自动domain

    1-在/etc/rc.local中配置开机自启动 su - sumapay25 -c "/opt/glassfish.sh start 1" 2-/opt/glassfish.sh ...

  6. Issue 3:数据处理基本认识

    介绍 传统数据库对数据处理一般都分成两类:OLTP和OLAP. 数据分析(OLAP)的前提条件是要准备数据. 然后才是具体的数据分析,对此,可以分为统计型的数据分析和挖掘性的数据分析. 最后对分析结果 ...

  7. 阿里云docker镜像加速

    echo "DOCKER_OPTS=\"--registry-mirror=https://yeyieqis.mirror.aliyuncs.com\"" | ...

  8. CentOS6.6安装及配置vsftpd文件服务器

    1.安装vsftpd和db4-utils,后者用来生成密码库文件,命令如下: # yum install -y vsftpd db4* 2.修改SELINUX,命令如下: # vim /etc/sys ...

  9. cocos2d-x 运行时xcode提示错误:"vtable for XXX", referenced from 问题已解决;

    vtable/引用和虚函数相关,今天在添加一个层的时候报了这个错误,很低级的错误,忘了实现虚函数了(谨记!!) 若如果实现了虚函数还依然如此的话,可能是创建的时候忘了钩上 -desktop 选项了,把 ...

  10. iOS计算完整文字高度(适应iOS 10)

    动态计算文字的高度:(切记LineSapcing>=2,不然会显示不全) +(CGSize) boundingALLRectWithSize:(NSString*) txt Font:(UIFo ...