1.对于文件的打开和关闭操作:首先了解到,C语言将文件分成了两种类型:文本文件和二进制文件.针对这两种文件,各有不同的文件读写方式。在C语言中,文件的操作要借助一个文件指针 即FILE 类型,定义了一个文件指针后才能够对文件进行各种操作。之后我们使用fopen函数来打开一个文件,对于fopen函数,有很多种的打开方式,其中:    文件使用方式由r,w,a,t,b,+六个字符拼成,各字符的含义是:r(read): 只读   w(write):     a(append): 追加   t(text): 文本文件,可省略不写   b(binary): 二进制文件,用r打开文件时,该文件必须存在,且只能读出,当用w打开文件时,若打开的文件不存在,则新建一个文件。若已存在,则删除后新建一个新的文件。如果打开文件成功,fopen函数会返回一个文件指针,如果打开失败,则会返回一个NULL(空指针)。当对文件的各种操作使用完后,必须将文件关闭。可以使用fclose(文件指针)函数。

2.对于文件的读写操作:fgetc(文件指针)从文件中读取字符。fputc(char,FILE)将字符输出到文件中。fputs(s,文件指针)将字符串输出到文件中。fgets(字符串存放的字符数组,字符数组长度,字符指针)从文件中读取字符串.fprintf(文件指针,格式,变量)格式化输出到文件中。fscanf(文件指针,格式,变量)从文件中格式化读取内容。 fread和fwrite函数,即二进制文件的读写。fwrite(要放入的内容,长度,次数,文件指针) fread(读取后内容放置的地方,长度,次数,文件指针)。

3.位运算

运算规则

1、&与运算:对应两个二进位均为1时,结果位才为1,否则为0。(有假为假==0)

2、|或运算:对应的两个二进位有一个为1时,结果位就为1,否则为0。(有真为真==1)

3、^ 异或运算:对应的二进位不同时为1,否则为0。(不同为真==1,相同为假==0)

注意:(1)相同整数相^的结果是0.

(2)一个数^另一数两次结果不变

(3)整数相^跟顺序无关

4、~ 取反运算:对整数的各二进位进行取反,包括符号位(0变1,1变0,真假互换)

5、<< 左移:把整数的各二进位全部左移n位,高位丢弃(包括符号位),低位补0。

左移n位其实就是乘以2的n次方(但移动后符号位变化除外,符号位改变则正负改变)

6、>> 右移:把整数的各二进位全部右移n位,符号位不变。高位的空缺是正数补0;

是负数高位是补0或是补1 取决于编译系统的规定;右移n位其实就是除以2的n次方

位运算的优先级:~、<<、>>、&、^、|、&=、^=、|=、<<=、>>=。

本文参考网址:https://www.jianshu.com/p/a220eb392383     https://blog.csdn.net/Jiajikang_jjk/article/details/89041324

转专业后补修C语言的一些体会(4)的更多相关文章

  1. 转专业后补修C语言的一些体会(3)

    1.指针:指针是C语言最为强大的工具之一,有着很多优点,比如可以改善子程序的效率,为动态数据结构提供支持,为C的动态内存分配系统提供支持,为函数提供修改变量值的手段.但指针的使用十分困难.会出现很多意 ...

  2. 转专业后对于C语言补修的一些体会(1)

    在转入软件工程后,原来的C语言程序设计只有三学分,而信息学院的C语言程序设计有四学分.迫于无奈的我只能再补修一遍C语言,自我认为大一对于C语言的学习已经基本足够,但我发现信息学院用的是不一样的书后,对 ...

  3. 关于转入软件工程专业后第二次java课上作业的某些体会

    今天是第二周的java课. 自从转入了软件工程专业后,在我没有学习c++的基础上,直接开始了学习java的过程.不得不说过程很艰辛.今天下午老师让编写一个随机产生作业的软件.而我的基础差到都不知道如何 ...

  4. 转专业后对于C语言补修的一些体会(2)

    第三章,有以下几个比较重要的点: 1. 强制类型转换. 强制类型转换是C语言中一个十分重要的工具,在C语言的使用中,有很多需要用到强制类型转换的地方,比如在除法中,如果想要得到正确的浮点结果,一般要确 ...

  5. 使用ML.NET实现情感分析[新手篇]后补

    在<使用ML.NET实现情感分析[新手篇]>完成后,有热心的朋友建议说,为何例子不用中文的呢,其实大家是需要知道怎么预处理中文的数据集的.想想确实有道理,于是略微调整一些代码,权作示范. ...

  6. wpf RadioButton控件的一个bug,onpropertychanged后会修改旧属性的值

    测试代码下载:http://files.cnblogs.com/djangochina/RadioButtonBug.zip 从上面列表选择不同的行,再设置下面不同的radiobutton看看结果 b ...

  7. Java 吃金币游戏设计与制作,下载版后补,代码没问题

    package com.swift; import java.awt.Color; import java.awt.Point; import java.awt.event.KeyEvent; imp ...

  8. JMeter - 后处理器/脚本语言 - 比较

    当我们使用JMeter / Response数据处理进行密集负载测试时,我们可能会非常小心我们选择的后处理器/脚本语言的类型.在这篇文章中,我想说明这些后处理器/脚本语言如何影响测试的整体性能. 我们 ...

  9. 为什么90%的大学都要求计算机专业学习C语言?

    编程语言是编程的工具,计算机相关专业的学生必须具备足够的编程能力.当然,关于"最好语言"的争论从来没有休止过,这里要强调一下:语言的选择真的没那么重要,学习语言的过程最重要是语言的 ...

随机推荐

  1. 后端工具——Maven——初篇——目录

    目录 Maven的知识体系包括四个部分.Maven的配置文件,Maven命令,Maven生命周期,Maven插件.在介绍Maven之前,首先需要介绍如何安装Maven. 安装:介绍Maven在Linu ...

  2. springboot08(springmvc自动配置原理)

    MVC WebMvcAutoConfiguration.java @ConditionalOnMissingBean(name = "viewResolver", value = ...

  3. C++的四种转换(const_cast、static_cast、dynamic_cast、reinterpreter_cast)

    static_cast 相当于C语言中的强制转换:(类型)表达式或类型(表达式),用于各种隐式转换 非const转const.void*转指针.int和char相互转换 用于基类和子类之间的指针和引用 ...

  4. hadoop SecondNamenode详解

    SecondNamenode名字看起来很象是对第二个Namenode,要么与Namenode一样同时对外提供服务,要么相当于Namenode的HA. 真正的了解了SecondNamenode以后,才发 ...

  5. 【应急响应】Tomcat安全加固

    一.删除或选定无效账号 二.密码复杂度 三.启用日志记录功能 四.登录超时 五.Tomcat错误页面重定向 六.禁止Tomcat目录列表显示文件

  6. 微信小程序传code 拿token 后台报40029 状态吗,是为什么?

    看看是不是code用了两次,还有种可能,检查一下后台的appid

  7. 题解【POJ1651】Multiplication Puzzle

    Description The multiplication puzzle is played with a row of cards, each containing a single positi ...

  8. 并发编程Semaphore详解

    Semaphore的作用:限制线程并发的数量 位于 java.util.concurrent 下, 构造方法 // 构造函数 代表同一时间,最多允许permits执行acquire() 和releas ...

  9. js的基本分类(0.1)

    js分内嵌,内联,外部样式表三种, js的组成分,ES(变量,函数,对象,数组,判断,循环),BOM(浏览器对象模型),DOM(文档对象模型), js的五种输出语句,alert(警告框),confir ...

  10. P&R 4

    Floorplan 要做好fp需要掌握哪些知识和技能? 通常遇到fp问题大致的debug步骤和方法有哪些? 如何衡量fp的QA? 通常FP是做PR 最关键也最具技术含量的一个环节.相对于后续的PR步骤 ...