C语言初学3:变量和常量

一、变量的定义与初始化

cpp 复制代码
# include <stdio.h>
int main()
{
	int age;            //定义整型变量
	float salary;       //定义浮点型变量
	char grade;         //定义字符型变量 
	int *ptr;           //定义指针变量 
	int i, j, k;        //定义多个变量
	int x = 10;         //整型变量 x 初始化为 10
	float pi = 3.14;    //浮点型变量 pi 初始化为 3.14
	char ch = 'A';      //字符型变量 ch 初始化为字符 'A'
	/*
	int x;          //整型变量x定义
	x = 20;         //变量x初始化为20
	*/ 
	 
	return 0;
}

二、变量声明的两种方式

  1. 需要建立存储空间。例如:int a 声明时就建立了存储空间。
  2. 不需要建立存储空间,通过使用extern关键字声明变量名而不定义它。例如:extern int a 其中变量 a 可以在别的文件中定义的。
cpp 复制代码
int a; //声明,也是定义
extern int a; //声明,不是定义

三、变量只有定义后才能使用

cpp 复制代码
#include <stdio.h>
 
// 定义变量 x 和 y(如果未定义,直接在下面赋值时编译会报错) 
int x;
int y;
int addtwonum()
{
    // 函数内声明变量 x 和 y 为外部变量
    extern int x;
    extern int y;
    // 给外部变量(全局变量)x 和 y 赋值
    x = 1;
    y = 2;
    return x+y;
}
 
int main()
{
    int result;
    // 调用函数 addtwonum
    result = addtwonum();
    
    printf("result 为: %d",result); // result 为: 3 
    return 0;
}

四、一个源文件中引用另外一个源文件中定义的变量

  • 只需要将变量声明为外部变量
相关推荐
北域码匠1 小时前
高通滤波算法深度解析(High-Pass Filter)
stm32·算法·c#·数字信号处理·嵌入式开发·滤波算法·高通滤波
南棱笑笑生1 小时前
20260904实测给飞凌OK3576-C开发板刷入Rockchip原厂的IMG固件【使用飞凌的DTS】切换串口波特率为1.5Mbps
c语言·开发语言·rockchip
指掀涛澜天下惊2 小时前
强化学习进阶篇八 策略梯度算法
深度学习·学习·算法·强化学习
乌萨奇也要立志学C++2 小时前
【洛谷】kmp算法
开发语言·算法
禹凕2 小时前
Dijkstra算法详解与应用
python·算法
YaraMemo3 小时前
元启发式算法框架
人工智能·算法·5g·信息与通信·启发式算法·信号处理
weixin_307779133 小时前
一维无粘 Burgers 方程的激波形成问题:MacCormack 格式求解
c++·算法·matlab
HugoStudio_SWAN4 小时前
洛谷 B4500 / B4449 / B3843 凯撒密码、密码强度与密码合规——加密与安全的三道门
c++·学习·程序人生·算法·安全
枫叶林FYL4 小时前
【群体智能集群控制工程实践】第3章 一致性协同算法
算法
禹凕5 小时前
滑动窗口算法实战指南
python·算法