有趣的C语言代码

看一下这段代码输出的是什么

 #include <stdio.h>
int main()
{
int i = ;
printf("%d\n", printf("%d", printf("%d", i)));
getchar();
return ;
}

C语言的特色
  C语言是一个有结构化程序设计、 具有变量作用域( variable scope) 以及递归功
能的过程式语言。
  C语言传递参数均是以值传递( pass by value) , 另外也可以传递指针( a pointer
passed by value) 。
  不同的变数类型可以用结构体( struct) 组合在一起。
  只有32个保留字( reserved keywords) , 使变量、 函数命名有更多弹性。
  分的变量类型可以转换, 例如整型和字符型变量。
  通过指针( pointer) , C语言可以容易的对存储器进行低级控制。
  编译预处理( preprocessor) 让C语言的编译更具有弹性。

认识C语言
   C是一种通用的编程语言, 广泛用于系统软件与应用软件的开发。 于1 969年至
1 973年间, 为了移植与开发UNIX操作系统, 由丹尼斯·里奇与肯·汤普逊, 以B语
言为基础, 在贝尔实验室设计、 开发出来。
   C语言具有高效、 灵活、 功能丰富、 表达力强和较高的可移植性等特点, 在程序
员中备受青睐, 成为最近25年使用最为广泛的编程语言。 目 前, C语言编译器普
遍存在于各种不同的操作系统中, 例如Microsoft Windows, Mac OS X,Linux, Unix
等。 C语言的设计影响了众多后来的编程语言, 例如C++、 Objective­C、 Java、
C#等。
   二十世纪八十年代, 为了避免各开发厂商用的C语言语法产生差异, 由美国国家
标准局为C语言订定了一套完整的国际标准语法, 称为ANSI C, 作为C语言的标
准。 二十世纪八十年代至今的有关程序开发工具, 一般都支持符合ANSI C的语
法。
  优点:

1、简洁紧凑、灵活方便
2、运算符丰富
3、数据类型丰富
4、表达方式灵活实用
5、允许直接访问物理地址,对硬件进行操作
6、生成目标代码质量高,程序执行效率高
7、可移植性好
8、表达力强

这是一门经过40多年还经久不晒的计算机语言, 而且比较贴近底层, 这
样不仅仅可以学习语言本身, 还可以了解一些更加深入的知识。

C — 对C语言的认识的更多相关文章

  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. 如何在Crystal框架项目中内置启动MetaQ服务?

    当Crystal框架项目中需要使用消息机制,而项目规模不大.性能要求不高时,可内置启动MetaQ服务器. 分步指南 项目引入crystal-extend-metaq模块,如下: <depende ...

  2. Mybatis拦截器实现分页

    本文介绍使用Mybatis拦截器,实现分页:并且在dao层,直接返回自定义的分页对象. 最终dao层结果: public interface ModelMapper { Page<Model&g ...

  3. requests从api中获取数据并存放到mysql中

    python的requests库是一个非常强大的库,requests的安装方法十分简单,用: pip install requests 即可安装requests,安装成功后: import reque ...

  4. 自己开发轻量级ORM(三)

    上一篇中简单分享了下ORM的设计思路.现在开始讲如何用代码来实现上篇的设计模型. 我们建2个类库来分别抽象数据库表结构关系映射和SQL增删改查操作. 打开VS2010,新建2个类库.分别起名为Mode ...

  5. sqlcmd命令导入大容量的SQL本地文件至SQL server 2008

    由于开发工作在测试环境,需要构造测试数据,经常遇到100+M大小的*.sql文件需要导入到测试库的情况,由于SSMS里对导入文件的大小有限制: 会出现上图的报错!上网查了下,超过80M的文件是不能在S ...

  6. PHP 数组处理

    一:PHP 定义数组: PHP 代码  不能再 空的位置 打字  会报错 定义数组  方式1 $cars=array("Volvo","BMW","T ...

  7. JAVA高级编程序——JDBC(连接mysql数据库)——(一)

    java要想连接数据库,就要用JDBC(java database connection),用这个jar包 (mysql-connector-java-xxx-xx-bin.jar) sun公司为我们 ...

  8. C#中字符和字符串总结

    Char类是C#提供的字符类型,String是C#提供的字符串类型. 字符: Char类在C#中表示一个Unicode字符. Char类只定义一个Unicode字符. Char类常用的方法及说明如下: ...

  9. Cassandra 学习笔记 - 1 - 关于Cassandra

    摘要 - Cassandra 的历史 Cassandra能做什么 Apache Cassandra最早是Facebook为了改进他们的Inbox搜索功能,由Avanash Lakshman和Prash ...

  10. PHP结合memcacheq消息队列解决并发问题

    在处理业务逻辑时有可能遇到高并发问题,例如商城秒杀.微博评论等.如果不做任何措施可能在高瞬间造成服务器瘫痪,如何解决这个问题呢?队列是个不错的选择.队列(Queue)又称先进先出(First In F ...