`
bupter520
  • 浏览: 55678 次
  • 性别: Icon_minigender_2
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

C语言学习笔记

阅读更多

.数据类型

C语言数据类型分为基本类型,构造类型,指针类型和空类型.其中基本类型又分为整型,字符型,实型和枚举举型;构造类型分为数组类型,结构类型和联合类型.

注意求余运算时,余数与被除数同符号,都为整数,35%8=3, 35%(-8)=3, (-35)%8=-3,只能用于整型量.自增和自减运算只能用于变量,不能用于常量或表达式.由于C语言编译程序尽可能自左向右将更多的运算符组成一个运算符,故r=w+++1;等价于r=w+++1

逗号运算符号:”表示用逗号隔开多个表达式/语句,先求出各个表达式的值,结果为最后一个表达式的值,如z=1020+390);则z的值为90。逗号表达式--使用逗号运算符号将两个表达式连接起来的式子。逗号表达式是把若干个表达式串联起来,最大特点在于它可以在一条语句中整合多种不同类型的表达式,用一条语句实现多个功能,printf("%d\n", ~i), i++, printf("%d", i);

<<,>>分别表示将数据按位左移、右移指定二进制位。对于右移操作,如果左操作数是负数,则移位后空出的位置被填充符号位。左移位 exp1<<exp2的表达式使得exp1的位被按expr2指明的数目进行左移,并在低端移入0. 移位运算的两个运算数必须是整形表达式,在运算数的两边完成整形提升,表达式整体的类型与提升后的左运算数相同。右移位运算符>>与左移位运算符是不对称的。对左操作数进行移位取决于左操作数的类型:

1)如果左操作数是无符号(或带符号的非负数),则左边移入0

2)如果左操作数是带符号的负数,则实现者可以选择补0或者把左操作数最左边的位移入(常见的是填充符号位)。因此,左操作数为负的带符号数值,而右操作数为非0时,>>的应用是不可移植的。如果右操作数是负数,则移位运算(左移和右移)的结果是未定义的。如果右操作数的值大于或等于左操作数的宽度(位数),则结果也是未定义的。如果右操作数为0,则结果等于左操作数。

字符常量用单引号括起来,字符串用双引号括起来,字符串包括一个结尾字符’\0’。在C语言中有三种转义字符字符:一般转义字符、八进制转义字符和十六进制转义字符。一般转义字符虽然在形式上由两个字符组成,但只代表一个字符。常用的一般转义字符为\n,\b;八进制转义字符由反斜杠”\”和随后的1~3个八进制数字构成的字符序列,例如\60,\141;十六进制转义字符由反斜杠和字母x及随后的1~2个十六进制数字构成的字符序列。

转义字符中只能使用小写字母,每个转义字符只能看作一个在C程序中使用转义字符\ d d d或者\ x h h可以方便灵活地表示任意字符。\ d d d为斜杠后面跟三位八进制数,该三位八进制数的值即为对应的八进制A S C I I码值。\ x后面跟两位十六进制数,该两位十六进制数为对应字符的十六进制A S C I I码值。

1.        当不确定某种类型所占内存大小的时候,保险起见可以使用sizeof(类型、or类型变量),当是类型变量的时候可以省略括号;

2.        c/c++规定int为机器字长,这样可以取得最大的执行效率。32位机上int,long (int)4字节,short2个字节,long long8个字节,float4个字节,double8字节,long double12字节。short的长度小于等于int长度,long大于等于int长度;

3.        整型在没有明确写出是有无符号的时候默认是signed的,char的正负取决于编译器,并且所占大小也不一定是1Byte

4.        C语言中位运算的对象可以是字符和整数。类型不同时,运算数右端对齐,再将位低的数向高位扩充。无符号数和正整数左侧用0补全;负数左侧用1补全;然后对位数相等的两个运算数,按位进行运算。

5.        类型混用时C 会自动把它们转换成同一种类型。在任何涉及两种数据类型的操作中,它们之间等级较低的类型会被转换成等级较高的类型。char short 类型的值,无论有符号还是无,都会自动转换成 int 或者 unsigned int. 进行赋值操作时右边的数据类型必须转换成左边的类型,若右边的数据类型的长度大于左边,则进行截断或舍入操作。若运算数中有doublefloat,则其他转换成double类型运算。若运算数中最长的类型为long型.则其他类型转换成long型数。

6.        使用逗号表达式的值作为结果时,最好把逗号表达式统一括起来(逗号运算符优先级最低),这样不易出错,且理解起来更方便.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.输入输出

C语言本身不提供收入输出语句,其输入和输出操作是由其编译系统提供的库函数来实现的,最基本的输入输出函数有printf(),scanf(),getchar(),putchar(),gets(),puts().

格式输出函数,格式:printf(“格式控制字符串” [,输出项表]);该函数具体包括以下功能:1.可以指定对不同类型的数据输出;2.给数据类型指定长度修正说明;3.指定输出数据的域宽和精度;4.给输出数据添加需要的说明性字符;5.为输出数据给定对齐方式;6.根据数据的正负为输出数据项添加+-或空格。

printf()可以输出常量、变量和表达式的值,但格式控制中的格式说明符,必须按照从左向右的顺序,与输出项表中的每个数据一一对应,否则出错。格式字符xeg可以用小写字母,也可以用大写字母。使用大写字母时,输出数据中包含的字母也大写。除此之外,其他格式字符必须小写。

格式控制字符串也称转换控制字符串,可以包含3种字符:格式指示符,转义字符和普通字符。

格式指示符,形式为:%[标志][宽度][.精度][h|l][类型]

标志

意义

-

结果左对齐,右边填空格

0

用“0”进行前位填充

+

在有符号数之前输出前缀+

空格

输出值为正时冠以前缀空格,为负时冠以前缀负号

*

用作占位符

#

csdu类无影响;对0类,在输出时加0;对x类,输出时加ox;对egf类当结果有小数时才给出小数点

                         标志字符

宽度:用十进制整数类表示输出的最少位数。若实际位数多于定义的宽度,则按实际位数输出,若实际位数少于定义的宽度则补以空格或0

精度:精度格式符以“.”开头,后跟十进制整数。本项的意义是:如果输出数字,则表示小数的位数;如果输出的是字符,则表示输出字符的个数;若实际位数大于所定义的精度,则截去超过的部分。

长度:长度格式符分为hl两种,h表示按短整型量输出,l表示按长整型量输出。类型:类型字符用以表示输出数据的类型。

格式字符

意义

d

十进制输出(正数不输出符号)

O

八进制输出无符号整数(不输出前缀0

x,X

十六进制输出无符号整数(不输出前缀0x

 

详见:http://wenku.baidu.com/view/abed7ffe910ef12d2af9e76a.html

分享到:
评论

相关推荐

    全套C语言学习笔记 -- 大Z的C语言授课笔记

    【C语言学习笔记】 C语言是一种强大的编程语言,它的学习笔记涵盖了从基础知识到高级特性的全方位内容。在学习C语言时,首先需要了解文件类型,如C语言的源文件通常以`.c`为扩展名,而C++源文件是`.cpp`。头文件`.h...

    c语言学习笔记,好东西

    本压缩包包含了一份精心整理的C语言学习笔记,旨在帮助读者深入理解和掌握C语言的核心概念与技术。 笔记首先从基础语法开始,包括变量、数据类型、运算符以及表达式。C语言中的数据类型有基本类型如int、char、...

    C语言学习笔记.zip

    本压缩包“C语言学习笔记.zip”包含了丰富的C语言学习资料,主要集中在“c-notes-master”这个子目录下,适合初学者和有一定基础的程序员进行深入学习。 在C语言的学习中,首先要掌握的基本概念包括变量、数据类型...

    C语言学习笔记.pdf

    ### C语言学习笔记知识点梳理 #### 一、C语言中的函数 C语言中的函数是程序设计的基本单位之一,主要用于组织代码、实现特定功能并能够被重复调用。 1. **函数分类** - **库函数**:由系统提供的标准函数,如`...

    C语言学习笔记 必看知识点

    C语言学习笔记 必看知识点 精品啊 值得看

    C语言学习笔记C语言学习笔记C语言学习笔记

    "C语言学习笔记" 本笔记总结了C语言的基础知识点,包括数据类型、输入输出函数、格式输出函数等。 一、数据类型 C语言的数据类型可以分为四类:基本类型、构造类型、指针类型和空类型。基本类型又可以分为整型、...

    C语言学习笔记 C语言学习笔记

    本压缩包包含的“C语言学习笔记”是一份详尽的C语言学习资料,旨在帮助读者深入理解和掌握C语言的基本概念、语法结构以及实际应用技巧。 一、C语言基础 C语言的基础包括变量、数据类型、运算符、流程控制等。变量...

    郝斌老师C语言学习笔记

    ### 郝斌老师C语言学习笔记 #### 一、终端基础命令 郝斌老师的笔记首先介绍了几个常用的终端命令,这些命令对于操作文件系统至关重要。 - **pwd**:此命令用于显示当前工作目录的完整路径。 - **ls**:列出当前...

    C语言学习笔记(个人总结)

    ### C语言学习笔记知识点梳理 #### 一、计算机系统概述 **1.1 计算机系统功能** - **输入**: 将外部数据输入到计算机系统中。 - **处理**: 数据通过程序处理后生成新的数据。 - **输出**: 处理后的数据输出到外部...

    谭浩强C语言学习笔记

    谭浩强C语言学习笔记 这是一本关于C语言的学习笔记,涵盖了从基本概念到高级应用的所有方面。下面是从中提取的重要知识点: 一、C语言概述 * C语言的历史和发展 * C语言的特点:结构化、模块化、可移植性、高效性...

    C语言学习笔记C语言学习笔记.doc

    C语言学习笔记C语言学习笔记

    C语言学习笔记基础完整

    本学习笔记旨在全面覆盖C语言的基础部分,帮助初学者掌握其核心概念和语法。 一、C语言概述 C语言由贝尔实验室的Dennis Ritchie在1972年创造,它的特点是运行效率高,程序控制性强,语法简洁。C语言是许多现代编程...

    C语言学习笔记.docx

    C语言学习笔记 本文档是一份C语言学习笔记,涵盖了C语言的基本概念、数据类型、运算符、控制结构、函数等内容。 1. 第一个C程序 C语言的第一个程序是Hello World程序。该程序使用#include "stdio.h"指令包含标准...

    C语言学习笔记.doc

    C语言学习笔记 本资源摘要信息对应的C语言学习笔记,涵盖了C语言的基本概念、语法规范、数据类型、常量定义、变量声明、函数调用、输入输出操作等方面的知识点。 一、C语言基本概念 * 一个C语言源程序可以由一个...

    嵌入式C语言学习笔记

    嵌入式C语言学习笔记 本文总结了嵌入式C语言学习笔记的要点,涵盖了运算符优先级、指针的用法、二分法查找、字符串操作、冒泡排序法、寻址方式、存储区域、volatile含义及应用等多个方面。 一、运算符优先级 在...

    C语言学习笔记1

    在C语言学习中,了解内存管理、数据类型、输入输出函数...以上就是C语言学习笔记第一课中的主要知识点。学习C语言时,理解并熟练运用这些基础知识是编写程序的关键。通过不断地练习和实践,可以更好地掌握C语言的精髓。

Global site tag (gtag.js) - Google Analytics