c语言语言教程0基础_C语言基础

c语言语言教程0基础

Hey, Folks here I am back with my second article on C language. Hope you are through with my previous article C language - History, Popularity reasons, Characteristics, Basic structure etc. In this one, I will cover some fundamental concepts of C Language namely Variables, Tokens, Operators in C language.

嘿,伙计们,我回来了第二篇有关C语言的文章。 希望您能读完我以前的C语言文章-历史,流行原因,特征,基本结构等 。 在这一篇中,我将介绍C语言的一些基本概念,即C语言中的变量,标记,运算符

Let’s get started...

让我们开始吧...

1)变量 (1) Variables)

They are temporary memory locations allocated during execution of the program. As the name suggests it is an entity whose value may change during program execution.

它们是在程序执行期间分配的临时内存位置。 顾名思义,它是一个在程序执行期间其值可能会更改的实体。

Rules for variable name

变量名规则

  1. It does not have a space between characters.

    字符之间没有空格。

  2. Collection of alphabets, digits, and underscore (_).

    字母,数字和下划线(_)的集合。

  3. The first character should be either alphabet or underscore (_).

    第一个字符应为字母或下划线(_)。

  4. No other special symbol except underscore (_).

    除下划线(_)外,没有其他特殊符号。

  5. Keywords cannot be used as variable name.

    关键字不能用作变量名。

Declaration of variable

变量声明

Syntax:

句法:

datatype variable_name;

Example:

例:

int a;

It tells the user what is the data type of a declared variable or what type of values it can hold.

它告诉用户声明的变量的数据类型是什么或它可以保存的值的类型。

Initialization of a variable

初始化变量

The process of assigning any value to any variable.

将任何值分配给任何变量的过程。

Example:

例:

int a = 5;

2)代币 (2) Token)

The basic and smallest unit of C program is token.

C程序的基本最小单位是令牌。

Token includes :

令牌包括:

  1. Keywords

    关键词

  2. Identifier

    识别码

  3. Constants

    常数

  4. String Constant

    字符串常量

  5. Operators

    经营者

  6. Special Symbols e.g: _ , @ , *

    特殊符号,例如:_,@,*

1) Keywords or Reserve words

1)关键字或保留字

These are those words whose meaning is already explained to the compiler.

这些是已经向编译器解释其含义的单词。

They can’t be used as a variable name because if we do so that means we are defining the new meaning to the compiler which the compiler does not allow.

它们不能用作变量名,因为如果这样做,则意味着我们正在为编译器定义编译器不允许的新含义。

2) Identifier

2)识别码

They are the name given to programming elements such as array, function, variable. Same rules as of variable name.

它们是诸如数组,函数,变量之类的编程元素的名称。 与变量名相同的规则。

3) Constant

3)常数

Entities whose value does not during the execution of a program.

其值在程序执行期间不存在的实体。

4) String constant

4)字符串常量

Collection of character enclosed by a double inverted comma. e.g.: "abc"

用双反逗号括起来的字符的集合。 例如: “ abc”

5) Operators

5)运营商

They are used to perform arithmetic and logical operations by ALU.

它们由ALU用于执行算术和逻辑运算。

Example:

例:

 a+b

Here, a and b are operands and + is an operator.

在这里, a和b是操作数,而+是运算符。

C language has very rich operators. Many different types of operators are available in C language for different mathematical computations.

C语言具有非常丰富的运算符。 C语言提供了许多不同类型的运算符,用于不同的数学计算。

They are mainly of three types:

它们主要分为三种类型:

Types of operators

Operators itself is a separate topic which needs to be covered in detail.

运营商本身是一个单独的主题,需要详细介绍。

So, here we get started.

所以,我们开始。

Unary operators

一元运算符

They require only one operand for execution, it includes :

它们只需要一个操作数即可执行,其中包括:

  1. Unary minus

    一元减

  2. Bitwise compliment

    按位赞美

  3. Logical Not

    逻辑不

  4. Increment / Decrement

    增量/减量

  5. sizeof() operator

    sizeof()运算符

sizeof() Operator

sizeof()运算符

It is used to return the size of an operand. It can be applied on variable, constant, datatype.

它用于返回操作数的大小。 它可以应用于变量,常量,数据类型。

Syntax:

句法:

sizeof(operand);

Example:

例:

    int a=2, b;
b = sizeof(a);
//or
b = sizeof(int);
//or
b = sizeof(5);
printf("%d\n",b);
//All of the 3 three statements will give same output.

Ternary operators

三元运算符

They are also called conditional operator. For these operators, we require 3 operands for execution. There is only and one ternary operator in C language.

它们也称为条件运算符。 对于这些运算符,我们需要3个操作数来执行。 用C语言只有一个三元运算符。

Syntax:

句法:

 expression_1  ? expression_2 : expression_3 ;

If expression_1 is true expression_2 gets executed, if false then expression_3.

如果expression_1为true,则执行expression_2 ,如果为false,则执行expression_3 。

Example:

例:

    int a=4 , b=7 , c;
c = ( a<7 ? a:b );
printf("%d\n", c );

Output

输出量

 4

Since, a = 4, exp_1 is true and therefore exp_2 gets executed. So, c = a gets executed.

由于a = 4 , exp_1为true,因此exp_2被执行。 因此, c = a被执行。

Binary operators

二元运算符

i) Arithmetic operators

i)算术运算符

Operator nameOperator
Addition+
Subtraction-
Multiplication*
Division/
Modulus%
操作员姓名 操作员
加成 +
减法 --
乘法 *
/
模量

Modulus operator gives remainder and division operator gives quotient. All arithmetic operators can be used for integer and float values except modulus which is used for integers only.

模运算符给出余数,除法运算符给出商。 除模数仅用于整数外,所有算术运算符均可用于整数和浮点值。

b) Relational operators

b)关系运算符

They are used for comparison between two values. They return result as true or false.

它们用于两个值之间的比较。 它们返回结果为true或false。

Operator nameOperator
Less than<
Less than or equal to<=
Greater than>
Greater than or equal to>=
Equal to ==
Not equal to !=
操作员姓名 操作员
少于 <
小于或等于 <=
比...更棒 >
大于或等于 > =
等于 ==
不等于 !=

c) Logical operators

c)逻辑运算符

Used to combine two relational expression and they returns result as true or false.

用于组合两个关系表达式,它们返回结果为true或false。

ABA && BA || B!A
00001
01011
10010
11110
一个 A && B A || 乙 !一个
0 0 0 0 1个
0 1个 0 1个 1个
1个 0 0 1个 0
1个 1个 1个 1个 0

d) Bitwise operators

d)按位运算符

They are used to perform operation on individual bits. They can be applied on char and int.

它们用于对单个位执行操作。 它们可以应用于char和int 。

OperatorsSymbol nameMeaning
&AmpersandBitwise AND
|PipeBitwise OR
^CaretBitwise X OR
~TildeBitwise compliment
<<Double less thanLeft shift operator
>>Double greater thanRight shift operator
经营者 符号名称 含义
&符 按位与
| 按位或
^ 插入符号 按位X OR
蒂尔德 按位赞美
<< 少于两倍 左移运算符
>> 大于 右移运算符

C Operator Precedence Table:

C运算符优先级表:

This page lists C operators in order of precedence (highest to lowest). Their associativity indicates in what order operators of equal precedence in an expression are applied.

本页按优先顺序(从高到低)列出C运算符。 它们的关联性指示在表达式中应用相同优先级的运算符的顺序。

C Operator Precedence Table

翻译自: https://www.includehelp.com/c/basics-of-c-language.aspx

c语言语言教程0基础

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/377151.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《MySQL——临时表》

内存表与临时表区别 临时表&#xff0c;一般是人手动创建。 内存表&#xff0c;是mysql自动创建和销毁的。 内存表&#xff0c;指的是使用Memory引擎的表&#xff0c;建表语法&#xff1a;create table ... engine memeory 表的数据存在内存里&#xff0c;系统重启后会被清…

drei

模拟9 T3 &#xff08;COGS上也有&#xff0c;链接http://218.28.19.228/cogs/problem/problem.php?pid1428&#xff09; 题目描述 输入a&#xff0c;p&#xff0c;求最小正整数x&#xff0c;使得a^x mod p 1。 分析 神奇的欧拉定理&#xff08;对于gcd&#xff08;a&#xf…

css中变量_CSS中的变量

css中变量CSS | 变数 (CSS | Variables) CSS variables allow you to create reusable values that can be used throughout a CSS document. CSS变量允许您创建可在CSS文档中使用的可重用值。 In CSS variable, function var() allows CSS variables to be accessed. 在CSS变…

SuperSpider——打造功能强大的爬虫利器

SuperSpider——打造功能强大的爬虫利器 博文作者&#xff1a;加菲 发布日期&#xff1a;2013-12-11 阅读次数&#xff1a;4506 博文内容&#xff1a; 1.爬虫的介绍 图1-1 爬虫&#xff08;spider) 网络爬虫(web spider)是一个自动的通过网络抓取互联网上的网页的程序&#xf…

《MySQL——关于grant赋权以及flush privileges》

先上总结图&#xff1a; 对于赋予权限或者收回权限还是创建用户&#xff0c;都会涉及两个操作&#xff1a; 1、磁盘&#xff0c;mysql.user表&#xff0c;用户行所有表示权限的字段的值的修改 2、内存&#xff0c;acl_users找到用户对应的对象&#xff0c;将access值修改 g…

《MySQL 8.0.22执行器源码分析(1)——execute iterator一些记录》

目录一条语句的函数调用栈顺序8.0使用迭代器模式改进executorint *handler*::ha_rnd_next(*uchar* **buf*)int *TableScanIterator*::Read()int FilterIterator :: Read&#xff08;&#xff09;int HashJoinIterator::Read()int NestedLoopIterator :: Read&#xff08;&#…

strcspn函数

函数原型&#xff1a;extern int strcspn(char *str1,char *str2) 参数说明&#xff1a;str1为参照字符串&#xff0c;即str2中每个字符分别与str1中的每个字符比较。 所在库名&#xff1a;#include <string.h> 函数功能&#xff1a;以str1为参照&#xff0c…

MongoDB源码概述——内存管理和存储引擎

数据存储&#xff1a; 之前在介绍Journal的时候有说到为什么MongoDB会先把数据放入内存&#xff0c;而不是直接持久化到数据库存储文件&#xff0c;这与MongoDB对数据库记录文件的存储管理操作有关。MongoDB采用操作系统底层提供的内存文件映射&#xff08;MMap&#xff09;的方…

SharePoint 2010 Form Authentication (SQL) based on existing database

博客地址 http://blog.csdn.net/foxdaveSharePoint 2010 表单认证&#xff0c;基于现有数据库的用户信息表本文主要描述本人配置过程中涉及到的步骤&#xff0c;仅作为参考&#xff0c;不要仅限于此步骤。另外本文通俗易懂&#xff0c;适合大众口味儿。I. 开启并配置基于声明的…

小狐狸ChatGPT系统 不同老版本升级至新版数据库结构同步教程

最新版2.6.7下载&#xff1a;https://download.csdn.net/download/mo3408/88656497 小狐狸GPT付费体验系统如何升级&#xff0c;该系统更新比较频繁&#xff0c;也造成了特别有用户数据情况下升级时麻烦&#xff0c;特别针对会员关心的问题出一篇操作教程&#xff0c;本次教程…

HDUOJ---1754 I Hate It (线段树之单点更新查区间最大值)

I Hate It Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 33469 Accepted Submission(s): 13168 Problem Description很多学校流行一种比较的习惯。老师们很喜欢询问&#xff0c;从某某到某某当中&#xff0c;…

C# 把数字转换成链表

例如&#xff1a;123456转换成 1 -> 2 -> 3-> 4-> 5-> 6 View Code static LinkedList<int> CovertIntToLinkedList(int num){Stack<int> stack new Stack<int>();LinkedList<int> result new LinkedList<int>();while (num!0…

《MySQL 8.0.22执行器源码分析(4.1)Item_sum类以及聚合》

Item_sum类用于SQL聚合函数的特殊表达式基类。 这些表达式是在聚合函数&#xff08;sum、max&#xff09;等帮助下形成的。item_sum类也是window函数的基类。 聚合函数&#xff08;Aggregate Function&#xff09;实现的大部分代码在item_sum.h和item_sum.cc 聚合函数限制 不…

Java 性能优化实战记录(2)---句柄泄漏和监控

前言: Java不存在内存泄漏, 但存在过期引用以及资源泄漏. (个人看法, 请大牛指正) 这边对文件句柄泄漏的场景进行下模拟, 并对此做下简单的分析.如下代码为模拟一个服务进程, 忽略了句柄关闭, 造成不能继续正常服务的小场景. 1 public class FileHandleLeakExample {2 3 p…

骑士游历问题问题_骑士步行问题

骑士游历问题问题Problem Statement: 问题陈述&#xff1a; There is a chessboard of size NM and starting position (sx, sy) and destination position (dx,dy). You have to find out how many minimum numbers of moves a knight goes to that destination position? 有…

Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)...

一、搭建Android开发环境 准备工作&#xff1a;下载Eclipse、JDK、Android SDK、ADT插件 下载地址&#xff1a;Eclipse:http://www.eclipse.org/downloads/ JDK&#xff1a;http://www.oracle.com/technetwork/java/javase/downloads/jdk7u9-downloads-1859576.html Android SD…

《dp补卡——01背包问题》

目录01背包[416. 分割等和子集](https://leetcode-cn.com/problems/partition-equal-subset-sum/)[1049. 最后一块石头的重量 II](https://leetcode-cn.com/problems/last-stone-weight-ii/)[494. 目标和](https://leetcode-cn.com/problems/target-sum/)01背包 1、dp数组以及…

用JavaScript往DIV动态添加内容

参考&#xff1a;http://zhidao.baidu.com/link?url6jSchyqPiEYCBoKdOmv52YHz9r7MTBms2pK1N6ptOX1kaR2eg320mlW1Sr6n36hpOeOadBxC2rWWGuhZPbms-K <div id"show"></div>要填充的数据为: 这是一个测试例子.jquery&#xff1a;$(function(){ var data …

《dp补卡——完全背包问题》

N件物品和一个最多能背重量为W的背包。第i件物品的重量为weight[i]&#xff0c;得到的价值是value[i]。每件物品都有无限个(可以放入背包多次)&#xff0c;求解将哪些物品装入背包里物品价值总和最大。 01背包和完全背包唯一不同在于遍历顺序上。 01背包的核心代码&#xff1a…

《dp补卡——多重背包》

多重背包简介&#xff1a; 有N种物品和一个容量为V的背包。第i种物品最多有Mi件可用&#xff0c;每件耗费的空间为Ci&#xff0c;价值为Wi。求解将哪些物品装入背包可使得这些物品耗费的空间总和不超过背包容量&#xff0c;且价值总和最大。 将Mi件摊开&#xff0c;就是一个01背…