C语言基础知识汇总

c语言执行步骤:

一.编辑程序

         1.编写c语言的代码,保存在扩展名.c的文件中,源文件。

         2.编写代码有三种方式:

                  a.vi命令方式系统自带

                  b.ultraedit网络下载

                  c.xcode网络下载

 

二.编译(gcc  文件名.c)

      将c语言转换成计算机识别的代码

 

 三.运行(./a.out)

       经过编辑、连接之后,源程序文件就可以生成可执行文件

 

* vi的使用-补充(c语言快捷键):shift+“:”进入编辑功能

   wq退出

   “i”insert进入编辑模式

 

四.xcode简单的使用

1.创建项目

2.创建一个osx—command line Tool

3.main.c进行编程

4. 菜单栏product编译-run执行

5.改字体(苹果-第二个prefer..偏好设置-第五个改字体)

 

五.#include指令

   1.在编译之前做的事情

   2.相当于复制操作

   3.加载系统提供的标准函数库

* 备注:        ”  ” 是加载系统自定义功能        《  》是加载系统功能

 

六.变量

    1.数据类型:字符型char、整数型int、浮点型float/double、指  针、结构、联合等类型。

    2.语法格式:变量类型  变量名=初始化值

    3.保存运算中临时的值,number1=10赋值,可以多次赋值,但只会保留最后一次的值(右—左)

    4.变量命名:a.必须以字母或下划线开头

                     b.包含字母、下划线或数字(不要出现空格)

                     c.不能与关键字冲突

                     d.大小写敏感的

                     e.长度一般不会限制,但会被编辑器截断

 

备注:变量放在等号左边就是存值操作,变量放在等式右边就是取值操作  

        i=10(存),j=i(取).把右面的赋值给左边的,从右向左

 

 

七  数据类型和变量赋值

1.整数类型

        (char、int)小数类型(float、double)

         a.有符号类型(整数、负数、0)        范围( -128~127)

               *所占存储空间的第一位为符号位。

               *二进制符号位,最左边0+,1代表负数

         b.无符号整型(整数、0)                范围(0~255)256

         c.有符号的整型(int,4个字节 )       范围(-2^31~2^31-1)

 

     *    Byte、KB、MB、GB、TB、PB            进率(1024)  详情参考   http://www.cnblogs.com/yhj1787354782/p/5048994.html

     如:1KB=1024B

    超出最大值从最小值开始运算

    超出最小值从最大值开始运算

 

        d.有符号的短整型(short int,2字节)

        e.有符号的长整型(long int,8字节)

        f.有符号的长长整型(long long int)

        g.无符号的整型(unsigned int,4字节)

        h.无符号短整型(unsigned  short int,2字节)

        i.无符号长整型(unsigned  long int,8字节)

        j.无符号长长整型(unsigned  long long  int,8字节)

 

2.进制

   a.十进制%d(0-9)                 逢十进一

   b.八进制%o(0-7)                 逢八进一

   c.十六进制%x(0-9ABCDEF)   逢十六进一

   d.二进制(0、1)                    逢二进一

           int i=11 //十进制

           int i=011 //八进制

           int i=0x11 //十六进制

*c语言不能使用二进制

     1.十进制转换二进制(除二取余,将余数从下向上读出)

举例:

32/2=17……0

17/2=8……1

8/2=4……0

4/2=2……0

2/2=1……0

1/2=0……1

将余数从下向上读出:100010

 

2.二进制数转化成十进制数(按权相加)

  0       1     0    1    1    1  0   1位    (从右向左)93

128   64    32   16   8    4  2   1权

举例:

1001110

0*2^0=0

1*2^1=2

1*2^2=4

1*2^3=8

0*2^4=0

0*2^5=0

1*2^6=64

得出的值相加=0+2+4+8+0+0+64=78

 

3.十进制数转换成八进制数、十六进制数

方法:辗转相除,从下向上取余

34/8=16……6

16/8=2……0

2/8=0……2

从下向上对应的八进制数:206

 

4.八进制数、十六进制数转换成十进制数

方法:按权相加法

6*8^0=6

0*8^1=0

2*8^2=128

按权相加:=134

 

5.二进制数转换成八进制数

 方法:从最后一位开始,每三位二进制数,相当于一个八进制数。前面不足3为补0

举例:100  010=42

 

6.二进制转换成十六进制数

方法:每四位,不足补0

举例:0010  0010->22

 

7.字符(%c)

 1.通过数值直接赋值  2.通过字符直接赋值

*备注:      .2f保留两位有效数字

 

8.变量:临时保存数据,数据的容器

   常量:不可改变的值(具体的数值)

   字面值:不可改变的值,就是数值(字符、数值)

  *  备注:变量=字面值(常量)数据

 

练习题: 可参考 原码,反码,补码 : http://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html

C语言中整数-8在内存中存储形式是:     原码->反码->补码(只有负数存的是补码)(2个字节=16位)

A)1111,1111,1111,1000             B)1000,0000,0000,1000

C)0000,0000,0000,1000             D)1111,1111,1111,0111

 

转载于:https://www.cnblogs.com/yhj1787354782/p/5049047.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/404484.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PHP中的逆波兰式应用

定义  逆波兰式(Reverse Polish notation,RPN,或逆波兰记法),也叫后缀表达式(将运算符写在操作数之后) 如:我们平时写ab,这是中缀表达式,写成后缀表达式就是:ab (ab)*c…

执行dos命令,不出现黑色的dos窗口

先准备一个.vbs文件,写好内容: Set ws CreateObject("Wscript.Shell") ws.run "cmd /c a.bat", vbhide再准备相应的.bat文件: dir /s /b * > a.logok, 运行.vbs文件吧

[react] 展示组件和容器组件有什么区别?

[react] 展示组件和容器组件有什么区别? 展示组件(Presentational Component) 关注页面的展示效果(外观) 内部可以包含展示组件和容器组件,通常会包含一些自己的DOM标记和样式(style) 通常允许通过this.pr…

Java学习----方法的重载

一个类中有多个同名的参数不一样的方法。 作用:可以根据不同的条件调用不同的方法。 注意:java不会因为方法的返回类型或者权限的不同而判断为不同的两个方法。 public class Student {public Student() {System.out.println("Student构造方法1&quo…

[react] react的书写规范有哪些

[react] react的书写规范有哪些 React元素必须使用大驼峰命名的方式组件尽量命名,方便进行调试JSX尽量用小括号包起来,更加直观,防止换行时出错 个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持…

LAMP源代码编译整理

在我们编译安装Apache 之前,要考虑的是让Apache 在什么样的模式下运行,因为从Apache 2.0 就加入了MPM(Multi-Processing Modules,多道处理模块)。Apache 2.0 在性能上的改善最吸引人。在支持POSIX 线程的Unix 系统上&a…

windows平台编译vlc

From: http://blog.csdn.net/guanshangming/article/details/5581270 转自:http://jeremiah.blog.51cto.com/539865/114190Jeremiah刚刚工作几个月,参与的第一个项目是与视频监控有关,分配给我的任务就是用开源的vlc做一个自己的播放器。对于开源项目来…

Appium--环境搭建

Appium介绍 Appium是一个移动端的自动化框架,可以做H5、Web测试、可以做功能测试(Android、IOS)、可以做跨进程测试,且是跨平台的。Appium做测试的时候支持的语言有很多种,包括java、Python、ruby、PHP、C#等。由于我熟…

[react] 类组件和函数式组件有什么区别?

[react] 类组件和函数式组件有什么区别? 函数式组件没有state和一系列的钩子函数,只接收一个props 个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前…

Windows 系统下Git安装图解

From: http://blog.csdn.net/jiguanghoverli/article/details/7902791 Windows 系统下Git安装图解 简单来说Git是一个免费的、开源的版本控制软件,从功能上讲,跟我们比较熟悉的Subversion(SVN)这类版本控制软件没什么两样。由于工作的需求,需…

opencv 在debian6.0下安装

1.下载 OpenCV-2.3.1a.tar.bz2 http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.3.1/ 2. 解压 tar -jxvf OpenCV-2.3.1a.tar.bz2 -C extract path 3 编译 安装 cmake -D CMAKE_BUILD_TYPERELEASE -D CMAKE_INSTALL_PREFIX/usr/local sourcecode/path 得到 …

GROUP BY 和SUBSTRING 的配合使用

GROUP BY 和SUBSTRING 的配合使用 也许你会遇到这样的数据情况: CREATE TABLE #PRODUCT(PRODUCTNAME NVARCHAR(50),STORAGE INT)INSERT INTO #PRODUCT VALUES(vancl裤子 白色,4)INSERT INTO #PRODUCT VALUES(vancl裤子 黑色,6)INSERT INTO #PRODUCT VALUES(vancl裤子…

[react] react中发起网络请求应该在哪个生命周期中进行?为什么?

[react] react中发起网络请求应该在哪个生命周期中进行?为什么? 异步情况可以在componentDidMount()函数中进行。 同步的情况可以在componentWillMount()中进行。 个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易&#xff0…

【fedora12】vlc-2.0.0编译

From: http://www.zhouwenyi.com/node/1348 1. 官网下载 VLC 源码 (vlc- 2.0.0.tar.xz) 下载地址为: http://download.videolan.org/pub/videolan/vlc/2.0.0/vlc-2.0.0.tar.xz 2. 解压VLC源码: xz -dvlc-2.0.0.tar.xz tar -xvfvlc-2.0.0.tar 3. cdvlc-2.0.0 …

终于发现为什么SQL没有释放句柄,原来是保存句柄的变量被覆盖了,丢失了原来的句柄...

stmt xxx , stmt yyy , stmt.close() 之前的xxx 没有close掉转载于:https://www.cnblogs.com/studyNT/p/5063796.html

Android实现3D旋转效果

下面的示例是在Android中实现图片3D旋转的效果。实现3D效果一般使用OpenGL,但在Android平台下可以不直接使用OpenGL,而是使用Camera实现,Camera中原理最终还是使用OpenGL,不过使用Camera比较方便。 Camera类似一个摄像机&#xff…

[react] 请描述你对纯函数的理解?

[react] 请描述你对纯函数的理解? 给定了输入的参数,则函数抛出的数据就是确定的函数内没有副作用(定时器,ajax等) 个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持一定很酷。欢迎大家一起讨论…

xsd操作

1.xsd介绍详见: http://blog.sina.com.cn/s/blog_ad0672d60102uy6w.html2.生成xsdDataSet dataSet new DataDet();// read date from xml filedataSet.ReadXml("xml2.xml", XmlReadMode.ReadSchema);// .. or set data with code// save as xsd fileSystem.IO.Strea…

[react] 在react中无状态组件有什么运用场景

[react] 在react中无状态组件有什么运用场景 适用于逻辑简单的纯展示的场景,如资料卡片等 个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易, 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

想尽快进入游戏开发行业的必经之路!

From: http://blog.csdn.net/hsz8250/article/details/639771 小时候就梦想自己以后能够参与游戏的制作,自己开发出来的游戏是最受欢迎,但是成功的背后充满了泪水和努力,只看表面是永远不会成功的.假如你对游戏开发充满热情,以下有一条最快的道路,让你尽快进入游戏开发行业,让…