明白一些变量

熟悉一些语句

组合一些函数

C语言——》库  帮你写好放在库中

魔数 凭空变出来的数字,不知道 数字表示的含义,影响代码的可读性。

C语音的参数传递 非常特殊,传递的是一个替身。

---------------------------------------------

main函数是C程序的入口

#include<stdlib.h>

system("pause");   //暂停

system("cls");//清屏

printf   输出系统库函数

变量 是一个名字,代表一个内存地址(占用内存的大小),这个内存值是可以在程序里面进行改变的。

变量的中值就是内存中存的数据。

变量的数据类型表示这个变量占用的内存大小。

C语言的基本数据类型

short:短整形,16bit(两个字节,一个字节=8bit)

  无符号:0~2^16-1  表示正数

  有符号:-2^8~2^8-1 表示正负数

int:整形,32bit

  无符号:0~2^32-1

  有符号:-2^16-1~2^16-1

float:单精度浮点型,32bit

double:双精度浮点型,64bit

long:长整形,32bit

char:字符型,8bit

bool:布尔类型,0和1,8bit   true(真)/false(假)

void:空类型,函数声明没有返回值的时候,使用 void

sizeof:计算变量或者数据类型占用内存的大小。

在数据类型前面加 undsigned 关键字,变量就是无符号类型数据。

inum+=2  和 inum=inum+2 意思相同

inum-=2  和  inum=inum=2 意思相同

inum3=inum++  表示后++,先把变量的值付给左边的变量,然后自己进行一个+1操作

inum2=++inum  表示前++,先把变量进行一个+1操作,在把+1之后的值付给左边的变量

inum3=inum--  表示后--,先把变量的值付给左边的变量,然后自己进行一个-1操作

inum2=--inum 表示前--,先把变量进行一个-1操作,再把-1之后的值付给左边的变量。

scanf:获取基本数据类型数据

gets:获得一个字符串

————————————————

if(条件表达式)

{

语句块

}

else if(条件表达式)

{

语句块

}

else

{

语句块

}

————————————————

switch(数字)

{

  case 数字:

    break;

  

  case 数字:

    break;

  default:

    break;

}

————————————————

for(表达式1;表达式2;表达式3)

{

}

————————————————

wihile(条件表达式)

{

  循环体

}

————————————————

do

{

  循环体

}while(条件表达式)

————————————————

break  退出循环

continue  跳转到循环开始,重新执行

\0  表示字符串的结束,是一个不可显示的字符

char array[]="hello";  不指定数组大小,这种必须初始化

char array[10]={0};没有明确的值,全部清零的初始化,只有在定义的时候才能这么初始化

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

atoi  字符串转换为整形数字

atof  字符串转换为单精度浮点型

atol  字符串转换为长整形数

指针用之前要判断指针变量是不是为空,用完了如果不为空,还要释放。

指针就是 变量的地址。

指针也是类型的,指针的类型指明这个指针指向什么数据类型的地址。

int * PA=null;//定义一个整形指针,这个变量可以保存整形标量的地址

int a=10;

PA=&a;//&取地址符

int b=*PA;//获得PA保存的地址中的值

int iSize=10;

int * PInt=(int *)malloc(sizeof(init)*iSize);//相当于10个元素的整形数组

free(PInt);//释放内存

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

在C语言中参数的传递有两种:

1)值传递:它是把一个数值传到函数内

2)指针传递:在函数内部可以改变指针所指地址内的值,这个值调用结束后,这个改变一直有效。

int & AA 是C++中的引用

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

安存储介质:磁盘文件、磁带文件

按文件编码方式(存储形式):文本文件、二进制文件

文件操作:

打开文件——》文件读写——》关闭文件

打开文件:建立用户程序与文件的联系,为文件分配一个文件的缓冲区。

读写文件:是指对文件的读、写、追加和定位操作

关闭文件:切断文件和程序的联系,释放文件缓冲区。

C语言知识总结的更多相关文章

  1. 【转】R语言知识体系概览

    摘要:R语言的知识体系并非语法这么简单,如果都不了R的全貌,何谈学好R语言呢.本文将展示介绍R语言的知识体系结构,并告诉读者如何才能高效地学习R语言. 最近遇到很多的程序员都想转行到数据分析,于是就开 ...

  2. STM32F4 阿波罗 库函数与C语言知识

    先聊一聊: 之前使用32都是用的库函数,但是没有理解为什么那么操作,有很多的文件我也不知道要看哪一个,感觉云里雾里,没有学清楚一件东西的感觉不太好,于是就在前几天一直跟着比较详细的视频学习.开始老师讲 ...

  3. C语言知识汇总,史上最全面总结,没有之一

    C语言基础 C语言学习路线 C语言入门笔记 初识C语言 简单的C程序示例 我们编写的C代码是怎样跑起来的? 简单示例,VS2019调试C语言程序 C语言基础-数据类型 深入理解变量,变量的声明,定义, ...

  4. 老师不讲的C语言知识

    老师不讲的C语言知识 导语: 对于工科生,C语言是一门必修课.标准C(ANSI C)这个看似简单的语言在硬件底层编程.嵌入式开发领域还是稳坐头把交椅.在20年5月份,C语言就凭借其在医疗设备上的广泛应 ...

  5. Go语言知识查漏补缺|基本数据类型

    前言 学习Go半年之后,我决定重新开始阅读<The Go Programing Language>,对书中涉及重点进行全面讲解,这是Go语言知识查漏补缺系列的文章第二篇,前一篇文章则对应书 ...

  6. 关于C语言知识调查

    因为上一篇随笔对这一部分写得不够清楚,因此在这篇做一些补充. 你是怎么学习C语言的? 起初,对于C语言的学习主要是通过老师课堂的教学,完成相关的课后作业.与我的技能相比的话,他们都有一个共同点需要去实 ...

  7. 基础语言知识JAVA

    1. 总结: JAVA比较重要的博客: http://www.runoob.com/java/java-tutorial.html     (JAVA教程) http://blog.csdn.net/ ...

  8. [Java面试九]脚本语言知识总结.

    核心内容概述 1.JavaScript加强,涉及到ECMAScript语法.BOM对象.DOM对象以及事件. 2.Ajax传统编程. 3.jQuery框架,九种选择器为核心学习内容 4.JQuery ...

  9. JavaScript语言知识收藏

    接触Web开发也已经有一段时间了,对javascript的认识也比以前有了更加深入的认识了,所以觉得应该整理一下. 一.JavaScript不支持函数(方法)的重载,用一个例子证明如下: functi ...

  10. C语言知识整理(3):内存管理(详细版)

    在计算机系统,特别是嵌入式系统中,内存资源是非常有限的.尤其对于移动端开发者来说,硬件资源的限制使得其在程序设计中首要考虑的问题就是如何有效地管理内存资源.本文是作者在学习C语言内存管理的过程中做的一 ...

随机推荐

  1. poj 1679 The Unique MST【次小生成树】

    The Unique MST Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 24034   Accepted: 8535 D ...

  2. (一)Eclipse 快捷键

    Ctrl+Alt+Down,即可以在下面快速复制一行 Ctrl+Alt+Up,即可以在上面快速复制一行.   1. ctrl+shift+r:打开资源 这可能是所有快捷键组合中最省时间的了.这组快捷键 ...

  3. python第三方库推荐 - 通过ntplib在windows上同步时间

    很多时候我们有通过程序脚本同步校正北京时间的需求. 在linux上同步时间比较方便,安装个ntpdate软件就行了. 但是在windows的要同步时间比较麻烦. 这时想到的就是从网络获取一个准确的时间 ...

  4. [Redux] Adding React Router to the Project

    We will learn how to add React Router to a Redux project and make it render our root component. Inst ...

  5. 理解ArcGIS Javascript Viewer Widget及编程模型

    一个ArcGIS Javascript Viewer for JavaScript Widget是一组可以共享.迁移及部署到JavaScript View程序中的的文本文件.通常,一个程序员如果要开发 ...

  6. storyBoard使用介绍

    storyBoard使用介绍 转载地址:http://www.2cto.com/kf/201210/161737.html 一 .简述 Storyboard是你可以用来定义用户界面的一种新的方式,像x ...

  7. [转] npm命令概述

    PS:问题,nvm找不到正确的下载server NVM_NODEJS_ORG_MIRROR=http://nodejs.org/dist nvm ls-remote NVM_NODEJS_ORG_MI ...

  8. Apple-Watch开发2 APPIcon设置

    网址:http://makeappicon.com/ 直接放置到相应的文件即可 (these are all in pixels) 48 x 48 55 x 55 58 x 58 80 x 80 87 ...

  9. JAVA中的static修饰的方法不能被重写

    可以重写静态方法,但重写后的静态方法不支持多态. 其实static根本就没有重写之说.static方法引用的时候应该用类名来引用,而不是对象.同时static方法不参与继承,所以在继承体系里面也不存在 ...

  10. ArcEngine:栅格分级渲染

    ArcEngine对矢量数据进行风格化实在是得心应手,同样的对于栅格图像也能进行风格化!以前没接触过,今天正好需要,做出了栅格图像的渲染!下面实现的思路: 1.定义渲染的一系列接口 2.判断图像是否建 ...