【C语言】求任意两整数的和入门详解
今天我们来看这个使用c语言编写的一个简易的求和程序 :
代码如下:
#define _CRT_SECURE_NO_WARNINGS 1
//该行代码用来解决scanf函数报错的,不推荐使用scanf_s来修正,因为该解决方案并非适用于所有编译器
#include<stdio.h>
int main()
{
int a = 0;
int b = 0;
int c = 0;
//创建并命名变量"a""b""c",并给它们赋值为0;
scanf("%d %d", &a, &b);
//scanf 格式输入 此行意义在于可以让代码在运行界面任意输入两个整数求和
//%d 代表一个整数 ,&a,&b 意思是这两个整数分别对应a和b
c = a + b;
//将a+b的值赋给c
printf("c=%d",c);
//在屏幕上打印出一个整数=c
return 0;
} //结束运行
下面对该程序进行详解:
1.#define _CRT_SECURE_NO_WARNINGS 1:作用是,防止我们在编译老的用C语言的开源项目如lua源包的时,因为一些老的.c文件使用了strcpy,scanf等不安全的函数,而报警告和错误。进而导致无法编译通过。在vs2022的环境中,针对以上报错问题,解决方案有两个,一是在程序引用头文件前先引用“#define _CRT_SECURE_NO_WARNINGS 1”。二是将“scanf”替换为“scanf_s”。这两种方式在vs的环境中都可以达到解决该问题的效果。但是,更推荐使用第一种方案,因为第二种方案并不是所有编译器都支持的,可能在别的编译器里这样写会导致程序继续报错。
2.int a=0:创建并命名变量a,且给它赋值为0。
有关c语言中的变量,我们先来看看其介绍:
因此,a是一个整型变量。如果采用“int a;”的方式仅声明但不初始化的方式创建的变量是不可以直接使用的,如图:编译系统会报错
3.scanf():我们先来看定义
特别注意:scanf函数后的变量名前一定要带&(寻址操作符),&a表示对象a在内存中的地址 ,是一个右值 。变量a的地址是在编译阶段分配的(存储顺序由编译器决定)。当然如果是一个数组/字符串则不需要带&,因为其数组名/字符串名本身就是一个指针常量。
4.c=a+b:注意,该条语句的意思是"将a+b的值赋给c",而不是“令c等于a+b”。在c语言中,由一个“=”连接的两个是赋值关系,两个才是相等
- 点赞
- 收藏
- 关注作者
评论(0)