首页 > 其他分享 >大一C语言知识点

大一C语言知识点

时间:2023-01-29 22:33:38浏览次数:62  
标签:知识点 形参 int 二维 C语言 地址 数组 大一 实参

 

形参,实参:

 

 

 

形参就是
比如void dfs(int x,int fa)  x 和 fa 就是形参

实参就是:
int main()

{

  int a,b; a和b就是实参,全局变量也是
}
形参:
调用函数时,形参会被分配一个新的内存空间,实参的值就会被“复制”进去,
让它在被调函数中参与运算。而实参本身不参与这个运算,它仅仅起到一个传递值的作用(不过在C++中可以用&改变实参的值)。
如果参数的形式是指针,那么“复制”的就是地址。
传值调用的形参只有在被调用时才被创建(分配存储单元)。
实参:实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参。

重点:形参和实参虽然可以同名,但它们之间是相互独立的,互不影响,因为实参在函数外部有效,而形参在函数内部有效。


scanf:

/*
scanf第二个参数需要返回一个地址
即scanf 第二个参数 是地址
*/


地址与内容

/*
* + 地址=内容

* 称之为取间访
*/


一维数组:

/*

int a[6]; 下标表示 (0~5)
数组名为指向首地址的指针:比如 a 就是 a[0]的地址,
a+i (i称为偏移量) 就是a[i]的地址
*a取了间访,为第一个元素的内容,*a+i 是 a[i]元素的值


输入是有两种方法

1.for(int i=0;i<6;i++) scanf("%d",&a[i]);
2.for(int i=0;i<6;i++) scanf("%d",a+i);

 

*/

 

二维数组:

/*

二维数组需要通过两次间接引用才能取到对应的元素。
int a[3][4] 
**(a+2) 相当于*(*(a+2) +0),对应下标为a[2][0],为第 3 行第 1 列的元素( 不是第 2 行第 0 列元素 )
*(*a+2) 相当于*(*(a+0)+2),对应下标为a[0][2],为第1行第3列的元素
a[3][1] 为第4行第2列的元素
*(a[3]+1)相当于a[3][1],为第4行第2列的元素

 

关于二维数组地址的加减 : 重点理解每行3个,下下面的图也能为此说明

 

 

 

二维数组中,行下标界可以省,列下标界不能省。原因是二维数组是按照行进行保存的,要正确取出某一行,需要知道该行中有几个元素(即共有几列)

(6条消息) 定义二维数组时,为什么二维数组行可省列不可省_晓龙coding的博客-CSDN博客

 

 

 

 

*/

 细琐/小知识点:

 '\0'为空字符,是字符类型数组初始化时放入的默认值

   

标签:知识点,形参,int,二维,C语言,地址,数组,大一,实参
From: https://www.cnblogs.com/Willette/p/17073972.html

相关文章

  • C语言王伯买鱼
    C语言王伯买鱼【问题描述】王伯退休后开始养鱼。他一早起来就赶去动物公园,发现这个世界的鱼真不少,五光十色、色彩斑斓,大的、小的,什么样的都有。这些鱼实在太美了,买的人越......
  • mooc——django课 知识点总结
    1.为了支持http协议,云端需要部署web服务器2.如果一个目录中包含了__init__.py文件,那么这个目录就是一个第三方包(第三方库)3.  4.  5.MTV开发模式  6.rende......
  • 初识C语言随笔
    常量:1.不变的量变量前面加const变常量const为常属性2.const修饰的常变量:常属性的变量不可以用在数组3.#define定义的标识符常量可用于数组intarr[MAX]=......
  • 转 前端开发常用css知识点 认识字就能学。
    前端开发:CSS相关的核心知识点置顶三掌柜666已于2022-10-1101:20:38修改220收藏2文章标签:csshtml前端版权前言在前端开发过程中,有三驾马车组成:JS、CSS、HTML,JS负......
  • C语言unsigned long 转换拆分
    提问: 问题遇到的现象和发生背景C语言将一个long的4个字节abcd拆分成dcba并且组回去,比如0x5f05变成0x055f遇到的现象和发生背景,请写出第一个错误信息用代码块功能插......
  • 看C语言程序员的七夕如何表白:用C说爱你
    有一封信,送给有你的七夕。总想为这1385个日夜写点什么,却是提笔思念,落笔无言。我只是一个平凡的C语言程序员,请你原谅我的笨,我愿给你我的心。我不会甜言蜜语,只会用C说爱你。 ......
  • C语言代码之判断回文数
    #include<stdio.h>//判断是否为回文数intmain(){ inta,n,s=0; printf("inputanumber:"); scanf("%d",&a); n=a; for(;;) { s=s*10+a%10; if(a/10==0) break; a=......
  • [快速学]C语言-文件操作
     相关函数位于<stdio.h>中缓冲区/流文件和程序之间有输入/输出缓冲区,缓冲区是一个内存空间文件位置指针读数据从文件位置指针开始读,写数据从文件指针位置开始覆写打......
  • C语言整型在内存中的存储
    前言对于整型家族里的C语言内置数据结构:char,short,intlong来说,都有无符号(unsigned)和有符号(signed)之分。整型家族在内存中都是以补码的形式存在.一、整型家族char:unsig......
  • C语言基础教程:C语言随机数
    1.随机数概述编写程序过程中,我们经常需要产生一些随机数。随机数在程序中分为两种:真随机数:完全没有规则,无法预测接下来要产生的数。伪随机数:通过一些预先设定好的规则产生......