• 售前

  • 售后

热门帖子
入门百科

1.1、C语言概述——VS2019配置与C程序、数据类型、常量与变量

[复制链接]
彭832 显示全部楼层 发表于 2022-1-15 18:06:15 |阅读模式 打印 上一主题 下一主题
目录
一、VS2019配置与C程序——经典的Hello World
二、C语言中的数据类型
三、常量与变量
1、变量的意义
2、定义变量及修改其值      
3、变量的分类
3.1、局部变量与全局变量的区别
3.2全局变量与局部变量的注意事项
4、变量的使用
5、常量


一、VS2019配置与C程序——经典的Hello World

        为了让我们写的代码跑起来,我们需要一个编译器并配置好运行环境,我这里用的是VS2019社区版,如果你也想用,可以点击下方链接来下载感谢您下载 Visual Studio - Visual Studiohttps://visualstudio.microsoft.com/zh-hans/thank-you-downloading-visual-studio/?sku=Community&rel=17        安装好之后,需要配置一下环境,只需勾选C++桌面开发即可
       
 
        环境配置好以后,打开编译器,(颜色等配置根据个人喜好来选择即可)。选择创建新项目,之后可按下图操作
 

        
         这样,我们就创建好了一个项目。然后,继续创建源文件

         
        这样,我们就创建好了一个项目,并在其下创建了一个源文件,一个程序的实现通常都是在一个项目中创建多个源文件、头文件等来实现的。
        下面,我们来写第一个C语言程序
         第一个最经典的C语言程序非打印Hello World莫属,实现该程序的代码如下:
   #include
  int main()
{
    printf("Hello World");
    getchar();
    return 0;
}
          将其运行,我们可以看到这样一个画面
        ​​​​ 
        下面,我们来解释一下这段代码
   #include
          首先,程序在形成之前,会对#include 这一行的代码进行处理
        这行代码的意思是,将stdio.h文件中的所有内容全部包含到当前的文件中。stdio.h是一个标准输入输出的头文件,里面包含了诸多C语言的库函数。关于这一点,在后续的章节中会有深入的讲解,这里只做简单的介绍
   int main()
          然后,一个C程序的执行都是要从主函数,即从main函数开始,主函数在一个项目中必须有且只有一个。
        一个函数实现的语法是:
        返回值类型 函数名(参数)
        {
        //函数功能;
        }
        而在这一行代码中,int表示该函数的返回值类型是整形(integer,即整数),其后的main为函数名,()中为空表示函数无参数。
   printf("Hello World");
          printf是包含于stdio.h文件的诸多库函数中的一个,其作用是将其中内容打印到显示器上,在本例中即打印Hello World。
        getchar() 此行代码在此仅用作使程序暂停,使我们能够观察到打印的内容
        return 0 表示这个函数最后返回0,(主函数一般都要返回0)

二、C语言中的数据类型

        数据类型分为内置数据类型和自定义数据类型
        C语言本身为我们提供了诸多内置数据类型,如


        不同的数据类型所占的内存空间大小不同,能够表达的数值范围也不同
        关于空间大小单位,由小到大依次为
        Bit—Byte(字节)—KB—MB—GB—TB
        8bit为1字节,1024字节为1kb,1024kb为1mb........
        而存在这么多的类型,其实是为了更加丰富的表达生活中的各种数值
        那么这些数据类型要怎么使用呢,我们往下看
三、常量与变量

        常量,即不变量,如圆周率、人的血型等,其值不可更改
        变量,即可变量,如年龄,体重等,其值是可更改的
1、变量的意义

        在一个程序中,数据是存储于内存中的,但我们不知道哪块内存区域存储了什么样的数据。通过创建变量,我们可以在内存中开辟一块区域(具体位置通常由编译器决定),来存放我们想要的数据,而当我们想修改数据时,可以通过这一变量找到开辟出的内存,对里面的数据进行修改
2、定义变量及修改其值      

        在C语言中,定义一个变量的语法为:
        数据类型 变量名;   
        如:
   int val;
  double weight = 1.0;
  char ch = 'a';
  weight = 2.0  // 修改weight中的值
          在这里,表达式左边的val、weight、ch都是变量名称,名称可以由用户自己定义。weight、ch两个变量都已经进行了初始化(即赋初始值),而val没有,在这种情况下,编译器会为其赋上一个随机值(不同编译器赋值方法不同)
        建议在定义变量的同时对其进行初始化
3、变量的分类

        变量分为局部变量与全局变量
3.1、局部变量与全局变量的区别

        1、二者的定义位置与默认赋值方法不同
   int g_val = 1000; //全局变量,创建于函数体之外
  int m;   //未初始化的全局变量,编译器默认对其赋值为1
  
int main()
{
    int value = 100;  //局部变量,创建于函数体之内
      int i;   //未初始化的局部变量,编译器默认对其赋随机值
    return 0;
}
           2、二者作用域与生命周期不同
        作用域是值变量可以被使用的代码范围,生命周期是指变量从创建到销毁的这一过程,函数内的局部变量在函数结束后销毁。
   #include
  int g_val; //全局变量g_val,其作用域为整个项目,生命周期从程序运行时开始到程序结束时结束
  int main()
{
    {
        int i = 0;  //变量i的作用域为离他最近的{}包含的代码块内
    }
    printf("%d", i); //此时会报错,因为此处超出了i的作用域,变量i不可用,但变量i的生命周期没有结束
    int j = 0;  //变量j的作用域为整个main函数
    return 0;
}
  3.2全局变量与局部变量的注意事项

        在局部变量的作用域内,不允许对这个变量重定义,即该变量名只能用一次
        而全局变量在整个工程中不允许重定义
   int g = 0;
int g = 2;//错误,全局变量不允许重定义,即使在其他文件中也不行
  int main()
{
    int i = 0;
    int i = 1; //错误,不允许在局部变量作用域内对其重定义
}
          但是由于全局变量与局部变量的作用域不同,允许定义的局部变量允许与全局变量同名
   int val = 0;
  int main()
{
    int val = 1;
    printf("%d", val);  //会打印出数字 1
}
          而当定义的局部变量与全局变量同名时,优先使用局部变量
4、变量的使用

        既然我们已经可以创建变量,变量又该如何使用呢,下面以求和为例进行简单阐述
   #include
  int main()
{
    int n1 = 0; 
    int n2 = 0;
    int sum = 0;
    printf("请输入要求和的两个数字");
    scanf("%d%d", &n1, &n2);
    sum = n1 + n2;
    printf("两数和为:%d", sum);
      return 0;
}
          首先,我们创建了n1,n2,sum三个变量并对其初始化
        然后,用scanf函数对n1和n2进行赋值,scanf函数是包含于stdio.h的一种,用以读取从键盘上输入的数据,并赋值给相应的变量。前面的%d是指要输入整形来对变量赋值,其总个数取决于后面要赋值的变量数。&n1,&n2是指将第一个输入的值赋给n1,第二个输入的值赋给n2,&n1、&n2的书写先后顺序决定了二者的赋值先后顺序
        之后,计算二者之和并赋值给sum
        最后打印结果,printf中的%d表示要打印一个整形,sum表示要打印的具体整形数字,若要打印多个整形,写法与scanf基本相同,如:
   int i = 0;
  int j = 1;
  printf("i = %d  j = %d", i, j);
  5、常量

        C语言中的常量大体有字面常量、const修饰的常变量、#define定义的标识符、枚举常量
   //#define定义的标识符
#define MAX 1000 //这里将MAX标识符定义为1000,之后编译器时,遇到MAX就会替换成数字1000
  //枚举常量(当前仅需简单了解即可)
enum person
{
    man,
    woman
};
  int main()
{
    // 字面常量
    1;
    3.1334;
    "abc";
      //const修饰的常变量
    const int i = 0;
    i = 1; // 错误,此时i中的数据不可被修改,但i本质仍未变量
}
          如果您觉得不错,请点个赞吧





来源:https://blog.caogenba.net/Seinrich/article/details/122484777
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作