首页 > 其他分享 >C语言学习笔记

C语言学习笔记

时间:2023-07-04 09:02:21浏览次数:29  
标签:变量 int sum 局部变量 笔记 C语言 学习 scanf

C语言学习笔记

1.初识C语言

常见类型长度

单位:字节=比特

全局变量和局部变量

全局变量:定义在花括号外的变量

局部变量:定义在花括号内的变量

局部变量和全局变量的名字重合时,局部变量优先

C语言规定变量要 定义在当前代码块的最前面

*计算两数之和:

#include <stdio.h>
int main()
{
    int num1=0;
    int num2=0;
    int sum=0;
    scanf("%d%d",&num1,&num2);//注意scanf要加双引号
    sum=num1+num2;
    printf("sum=%d\n",sum);
    return 0;
}

代码域和生命周期

代码域:限定变量的可用性的代码范围

生命周期:变量的创建到销毁之间的一个时间段

不安全的函数

如scanf()等,会提示改用scanf_s() 取消提示只需要在源文件第一行最前面添加

#define _CRT_SECUR_NO_WARNINGS

常量

1.字面常量 如3;3.14

2.const 修饰的常变量 const int num=1; 之后无法再修改变量num的值

3.#define 定义的标识符常量 在花括号外面,代码块开头

#define MXA 10 //没有等号,没有分号

4.枚举常量

一 一列举

//写在main函数外面

enum Sex //enum是枚举的意思
{
  MALE, //0   //注意是逗号
  FEMALE,//1
  SECRET  //2  //注意没有符号
}; //;必不可少

//在main()函数里引用时的格式:  
	enum Sex s=xxx;

字符串

由双引号闭合的一串字符

注意:字符串结束的标志是一个 \0 的转义字符,在计算长度时是结束标志,不计入字符串内容

数组

char arr1[]="abc"; //数组   末尾有结束标志  \0
char arr2[]={'a','b','c'}; // 没有结束标志
char arr3[]={'a','b','c',0}; //添加结束标志0 或 '\0'
print("%s\n",arr1);
print("%s\n",arr2);
print("%s\n",arr3);

标签:变量,int,sum,局部变量,笔记,C语言,学习,scanf
From: https://www.cnblogs.com/arongsec/p/17524728.html

相关文章

  • Vue3学习-01_前端工程化与webpack
    背景最近在学习Vue知识,参照的教程是黑马程序员官网提供的免费前端教程,这里记录一下自己的学习笔记以及遇到的相关问题。前端工程化的概念及优点前端工程化指的是:在企业级的前端项目开发中,把前端开发所需的工具、技术、流程、经验等进行规范化、标准化。最终落实到细节上,就是实......
  • 2048学习
    1.块元素、行内元素、行内块元素块元素的特征:自身独占一行高宽、宽度、内外边距可自定义宽度默认为父元素的100%默认纵向排列高度默认被内容撑开常见块元素:<p><div><ul><li><h1>-<h6><form>行内元素特征:相邻元素在一行高度宽度设置无效默认的宽高是文本内容的宽高......
  • Java学习第一天 / 常用的DOS命令
     #盘符命令盘名+:#查看当前目录下多有文件dir#切换目录cd(changedirectory)#回上一个步骤cd..#清理屏幕cls(clearscreen)#退出终端exit#查看电脑IPipconfig#打开应用calcmspaintnotepad#ping命令ping+......
  • mysql迁移到pqsql笔记
    在将MySQL迁移到PostgreSQL的过程中,遇到了一些问题,下面是一些简单的解决方案。使用命令,初始化数据库,并设置postgres的密码bin\initdb-EUTF-8-Amd5-Upostgres-W-Ddata--如果只使用bin\pg_ctl-Ddatainit则不会设置postgres的密码命令启动pqsql:bin\pg_ctl-Dda......
  • 【Java全栈学习路线】最全的Java学习路线及知识清单,Java自学方向指引
     目录 【Java全栈学习路线】前言目录一、JavaSE基础二、JavaWeb三、JavaEE四、Linux运维五、分布式与微服务六、大数据开发  一、JavaSE基础 JavaSE基础知识的学习是为了后边走的更远~文章链接1.计算机基础【JavaSE】之计算机基础2.Java入......
  • 软测笔记7-【mysql实操题】
    实操题1建表准备#建学生信息表studentcreatetablestudent(snovarchar(20)notnullprimarykey,snamevarchar(20)notnull,ssexvarchar(20)notnull,sbirthdaydatetime,classvarchar(20));#建立教师表createtableteacher(tnovarchar(20)notnullprima......
  • 六月学习之Haproxy default配置
    4、Haproxydefault配置defaults段用于为所有其他配置段提供默认参数4.1、option参数httplogoptionhttplog:用来记录日志,其通常包括但不限于HTTP请求、连接计时器、会话状态、连接数、捕获的首部及cookie、"frontend"、"backend"等信息。dontlognulloptiondontlognull:不记录......
  • Jmeter学习之五_跟踪被测试服务器的performance
    Jmeter学习之五_跟踪被测试服务器的performance背景这几天简单学习了一些基本的测试过程.可以实现一些简单基本的功能了.今天晚上继续进行了jmeter的一些学习.想着可以在测试人大金仓的同时可以查看一下本地的机器性能.用到的工具以及资料https://www.cnblogs.com/......
  • 软测笔记6-【Mysql面试题】
    1.请列出几款典型的关系型和非关系型数据库关系型数据库:mysql、sql-server、oracle非关系型:redis、mongodb2.请列出mysql数据库的特点特点有:可移植性好、支持多操作系统、支持多语言、开源社区版本免费、支持多线程等3.Mysql中常用的数据类型有哪些?字符串型、数值型、......
  • 【mysql】一、mysql的学习---索引
    mysql的学习资料来源 https://www.bilibili.com/video/BV1CZ4y1M7MQ?from=search&seid=3518646188262100291一、索引:【mysql】一、mysql的学习---索引二、视图:【mysql】二、mysql的学习---视图三、存储过程和函数:【mysql】三、mysql的学习---存储过程和函数四、触发器:【mysq......