1.在函数中,只要说明了变量,就可为其分配存储单元

error:如auto和register类型的变量在定义它的函数被调用时才被分配存储单元

auto:默认的局部变量存储方式,(这种变量定义时在动态存储区被分配空间),使用完毕后(比如函数结束),被系统回收,整个过程是系统管理的,所有称为自动变量

register:寄存器存储方式,(通常变量都被存储在内存里,使用时被读入CPU处理,但这会耗费时间),如果某个变量使用频率极高,如循环控制变量,则可以使用该关键字将这个变量放入CPU内部的寄存器中以提高操作速度,不过,由于CPU寄存器是有限的,所以,(只有自动变量和形参才可以被设置为寄存器变量,而且有数量限制)

static:这个关键字定义的局部变量被放置在静态存储区,即使在函数调用结束后,其内存空间也不会被回收,而且保持原值,这样,下次函数被调用时,访问的仍然是同一个变量,静态变量只在编译阶段初始化一次。虽然static定义的变量不会被回收,但是如果它修饰的是局部变量,所以使用它的只能是定义它的函数,其它函数无法使用

全局变量被存储在静态存储区,分为两种:

内部全局变量区,用static声明,其作用域为本cpp文件,其它文件不能使用

外部局部变量,不加任何声明的全局变量默认为外部全局变量 1.如在本cpp中使用,直接使用n即可,如跨文本使用,需要使用前用extern int n声明一次,这个声明并不会产生新变量

只是说明n在其他cpp中

2.不用参数交换变量x和y的值

func (int *x, int *y)

{

*x=*x+*y;*y=*x-*y; 

*x=*x-*y;  

}

3.实现字符串的复制

func(char *s1,char *s2)

{

  while(*s1++=*s2++);

}

4

fgetc():函数返回来自(FILE *)stream流中的下一个字符,如果达到文件尾或者发生错误时返回EOF
rewind()把文件指针移到由stream(流)指定的开始处,同时清除和流相关的错误和EOF标记
ftell:返回stream流的当前位置(long),如果发生错误返回-1
fseek:为给出的流设置位置数据,int fseek(FILE *stream,long offset,int origin)(在stdio.h中定义)
如fseek(fp,-10,1)将文件指针fp从当前位置向文件首方向移动10个字符

将文件(F根目录)f1的内容先在屏幕上显示,然后复制到(F根目录)f2
#include <stdio.h>
#include <stdlib.h>
int main()
{
  FILE *fp1,*fp2;
  if((fp1=fopen("F:\\f1.txt","r")) == NULL)//必须有新文本存在
  {
    printf("Cannot open f1\n");
    exit(0);
  }
  if((fp2=fopen("F:\\f2.txt","w")) == NULL)//文本如无,则创建新的文本
  {
    printf("Cannot open f2\n");
    exit(0);
  }
  while(!feof(fp1))
    putchar(fgetc(fp1));
  rewind(fp1);
  while(!feof(fp1))
  fputc(fgetc(fp1),fp2);
  fclose(fp1),fclose(fp2);
  return 0;
}

5

#include <stdio.h>
void aaa() {printf("hi");}
void bbb(){printf("hello");}
void ccc(){ printf("bye");}
int main()
{
  void (*p[3])() = {&aaa,&bbb,&ccc};//指针数组引用三个函数
  return 0;
}

北理工c语言单项选择题的更多相关文章

  1. 北理工c语言期末考试

    1 给定一个区间,输出其中前半部分数字之和等于后半部分数字之和的数,没有则输出No output.(15分) 题目内容: 给定一个区间,输出其中前半部分数字之和等于后半部分数字之和的数,没有则输出No ...

  2. C语言练习题_北理工的恶龙

    背景:最近,北理工出现了一只恶龙,它长着很多 头,而且还会吐火,它将会把北理工烧成废墟, 于是,校长下令召集全校所有勇士杀死这只恶龙.要杀死这只龙,必须把它所有的头都砍掉,每个勇士只能砍一个龙头,龙的 ...

  3. NLPIR(北理工张华平版中文分词系统)的SDK(C++)调用方法

    一.本文内容简介 二.具体内容 1. 中文分词的基本概念 2.关于NLPIR(北理工张华平版中文分词系统)的基本情况 3.具体SDK模块(C++)的组装方式 ①准备内容: ②开始组装 三.注意事项 一 ...

  4. 北理工机器人队RM视觉组学习参考汇总(持续更新中)

    欢迎大家有意加入北理工机器人队参与到视觉组的工作中.在大家能够正式作为队员参与到视觉组的准备工作之前,北理机器人队需要对各位进行培训.这篇文章主要面向有志于参加机器人队视觉组的同学.同时,欢迎所有对相 ...

  5. C-链表实现,保存文件,评估-单项选择题系统课程设计---ShinePans

    课程设计   单项选择题标准化考试系 所属专业:软件project软件三班 完毕人:潘尚 一.设计计划. 1.能够用菜单明白的指导用户操作. 2.操作完毕能够返回主菜单. 3.将输入的题目保存至C盘的 ...

  6. 关于c语言单项链表尾添加

    犹豫了几天,看了很多大牛写的关于c语言链表,感触很多,终于下定决心,把自己对于链表的理解随之附上,可用与否,自行裁夺.由于作者水平有限也是第一次写,不足之处,竭诚希望得到各位大神的批评指正.制作不易, ...

  7. 【学习笔记】PYTHON语言程序设计(北理工 嵩天)

    1 Python基本语法元素 1.1 程序设计基本方法 计算机发展历史上最重要的预测法则     摩尔定律:单位面积集成电路上可容纳晶体管数量约2年翻倍 cpu/gpu.内存.硬盘.电子产品价格等都遵 ...

  8. 北理工机器人队RM视觉组ubuntu必备软件安装指南

    基础软件安装 sudo apt update && sudo apt upgrade sudo apt install git curl vim gcc g++ cmake与make ...

  9. 【学习笔记】PYTHON网络爬虫与信息提取(北理工 嵩天)

    学习目的:掌握定向网络数据爬取和网页解析的基本能力the Website is the API- 1 python ide 文本ide:IDLE,Sublime    Text集成ide:Pychar ...

随机推荐

  1. CutJS – 用于 HTML5 游戏开发的 2D 渲染引擎

    CutJS 是轻量级的,快速的,基于 Canvas 开发的 HTML5  2D 渲染引擎,可以用于游戏开发.它是开源的,跨平台的,与现代的浏览器和移动设备兼容.CutJS 提供了一个类似 DOM 树的 ...

  2. 【2015上半年总结】js开源组件开发系列索引

    js开源组件开发系列一索引 2015.8 by 田想兵 个人网站 从3月份进入新公司以来,时经五个月,我以平均每周1个小组件的速度,已经完成的js组件有22个之余了,已基本上全部用到实际项目中,这些小 ...

  3. 从零开始,做一个NodeJS博客(三):API实现-加载网易云音乐听歌排行

    标签: NodeJS 0 研究了一天,翻遍了GitHub上各种网易云API库,也没有找到我想要的听歌排行API,可能这功能比较小众吧.但收获也不是没有,在 这里 明白了云音乐API加密的凶险,我等蒟蒻 ...

  4. AJAX跨域访问(从Tomcat8到Apache/Nginx)

    1.在Tomcat的Root目录下放入如下的文件 apache-tomcat-8.0.12X64\webapps\ROOT clientaccesspolicy.xml文件 <?xml vers ...

  5. DevExpress 13.1.8全面支持VS2013

    界面套包DevExpress 13.1.8重磅来袭.从这个版本开始所有.NET控件均正式支持VS2013,当然还有很多其他更新,下面是部分更新内容: DevExpress所有.NET控件: 正式支持V ...

  6. 如何编写Vault插件扩展Vault Explorer的功能

    今天练习了一下Vault Explorer的扩展程序,基本上是Vault SDK中的HelloWord示例程序.如果你刚刚开始接触Vault的二次开发,希望对你有帮助. 开始之前,你需要安装Vault ...

  7. jquery非空验证功能

    <script type="text/javascript">                $(function(){          /************* ...

  8. Android 隐式意图的配置

    本文地址:http://www.cnblogs.com/wuyudong/p/5677473.html,转载请注明源地址. <Android 显示意图激活另外一个Actitity>一文介绍 ...

  9. 用Objective-C写了一个简单的批量更改文件名的程序

    前言:因为本人要高仿一个app,从app中解压asserts得到的所有图片文件,文件名都带有~iPhone这个干扰的名字,为了去除这个~iPhone这个字符串,所以本人写了个简答的批量更改所有文件名的 ...

  10. 深入浅出Block的方方面面

    内容大纲: 1.Blocks概要 2.Blocks模式 3.Block实质(面试常问重点) 1.Blocks概要 什么是Blocks:Blocks是C语言的扩充的功能,可以用一句话来表示Blocks的 ...