当前位置:网站首页>Rough notes of C language (1)
Rough notes of C language (1)
2022-07-05 07:18:00 【After reading thousands of books, you can pick them up and put 】
C Language is a computer language —— The language of human and machine communication (c Language ,c++,JANA,Python)
Computers have to develop —— Early recognition is binary .
Computers are hardware , Electrify , Electricity Division , Positive and negative , Used in computers 0 Means negatively charged ,1 Indicates positive electricity , All computers can handle are electrical signals ,0,1 Such a signal , Binary language . So to run a program, you just need to give it a binary sequence .
At the beginning of a program, you need to type a large string of code, such as :100001110110
It's too hard to remember these , So people wonder if they can give a name to a program instruction represented by a piece of code
Such as 1000011——ADD( Mnemonic symbol )
In the future, just fight ADD Just fine , It knows or turns into 1000011.
And this mnemonic is assembly language .
In the later development, people wanted one sentence to represent many strings of code , There was also B Language ——C Language ,C++,……( High-level language )
C Language —— Early immaturity —— mature —— popular
Early immaturity : Each company has its own customized functions , So every company has its own customized functions , My house c Language can't pass in your compiler software , I can't pass in his compiler . Then international standards appeared .
ANSICC( The National Bureau of standards )——C89( Launched in 2013 )/C90 (89,90 be similar )
later ISO cognizance C89 For thorough International Standards .
C99/C11 It's not popular , Many compilers do not support , Only by the same standard can it become popular , In order to run in various compilers .
C Language is a process oriented computer programming language , And C++,JAVA, Object oriented programming languages such as , Its compiler mainly includes Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C etc. .
first C Language program
.c—— Source file
.h—— The header file 
Main
: The main function : Program entrance , The program from main The first line entry of the function , No addition main Function, it doesn't know which line to start with .
How many more ?
Also, there are too many entrances. It doesn't know where to start . So the main function has and only has one , It can't be without .
data type


To put A There is room for saving , Now let's apply for a space from the computer memory , Give Way ch Take the application and place the space name ch, To store characters A.
Common data types correspond to print symbols
%c// Print data types in character format ;
%d// Print integer decimal data types ;
%f// Print floating point numbers ;
%p// Print in the form of an address ;
%x// Print in hexadecimal data type ;
Why are there so many types ?
What is the size of each type ?
answer : The range of values is different , To reduce memory , The corresponding number corresponds to the type , Different space occupied .
C Language standards sizeof(long)>=sizeof(int)
The current operating system has developed to 64 Bit operating system , However, due to the different process of program compilation , The two show different differences :
32 Bit compiler system :int Four bytes , And long identical .
64 Bit compiler system :int Four bytes ,long Occupy 8 byte ,long The data range becomes :-263~263-1
Sizeof():
Calculation xx The amount of space taken up , Unit byte ;
Units in a computer
A computer is a piece of hardware , Electrify , It recognizes electrical signals , Positive and negative electricity Division , Positive for 1, Negative is 0, The electrical signal is converted into a signal that the computer can recognize 1 and 0. Computer can recognize positive and negative , Prove that it can recognize 1 and 0 Such a signal .
that 1 and 0, Such instructions need space to store , Deposit 1 or 0 Such a space size is a bit .( Store a binary bit ).
A byte 8 A bit ;
For example, there are three bits 23 There are two possibilities and the largest data is 23-1;
Sixteen bits have 216 There are two possibilities and the largest data is 216-1;
Report errors ,
float
It's single precision ,95.6 It is regarded as double precision
So sometimes in 95.6 After add f Just fine . But sometimes you can't just change .

Variable

Global variables : Defined in the code block ({}) Other variables ;
local variable : Defined in the code block ({}) The variables within ;
&: Address fetch , Tell him to put this input data here .
The computer memory is very large, so it is convenient to divide the memory into small pieces , Easy to find , For example, get the address directly num1;
Local variables can only be used in {} Use in ;
It is recommended that the names of local variables and global variables should not be the same . Easy to produce bug
When local variables and global variables exist at the same time, local variables have priority ;
The scope and life cycle of variables
Scope : The concept of programming , Generally speaking , The names used in a program are not always valid / Usable . The scope of the available code that limits the name is the scope of the name .
Scope of variable
:
- The scope of a local variable is the local scope of the variable ;
- The scope of global variables is the whole project ;
extern Declaration of external symbols


shazi, Put it in the code block {} Calculate the global variables ;
Life cycle :
The life cycle of a variable is the period between the creation of a variable and its destruction .
4. The life cycle of a local variable is : Enter the beginning of the scope lifecycle , Work or end of life cycle ;
5. The life cycle of global variables is : The whole life cycle of the program .
边栏推荐
- M2dgr slam data set of multi-source and multi scene ground robot
- ROS2——ROS2对比ROS1(二)
- iNFTnews | 喝茶送虚拟股票?浅析奈雪的茶“发币”
- Mipi interface, DVP interface and CSI interface of camera
- Inftnews | drink tea and send virtual stocks? Analysis of Naixue's tea "coin issuance"
- 并发编程 — 如何中断/停止一个运行中的线程?
- Negative number storage and type conversion in programs
- [vscode] prohibit the pylance plug-in from automatically adding import
- Implementation of one-dimensional convolutional neural network CNN based on FPGA (VIII) implementation of activation layer
- DelayQueue延迟队列的使用和场景
猜你喜欢

Literacy Ethernet MII interface types Daquan MII, RMII, smii, gmii, rgmii, sgmii, XGMII, XAUI, rxaui

PostMessage communication

第 2 章:小试牛刀,实现一个简单的Bean容器

An article was opened to test the real situation of outsourcing companies

Powermanagerservice (I) - initialization

Tshydro tool

And let's play dynamic proxy (extreme depth version)

【软件测试】02 -- 软件缺陷管理

Steps and FAQs of connecting windows Navicat to Alibaba cloud server MySQL
![[vscode] prohibit the pylance plug-in from automatically adding import](/img/a7/d96c0c4739ff68356c15bafbbb1328.jpg)
[vscode] prohibit the pylance plug-in from automatically adding import
随机推荐
SOC_ SD_ CMD_ FSM
Chapter 2: try to implement a simple bean container
Ros2 - common command line (IV)
SOC_SD_DATA_FSM
Unity ugui how to match and transform coordinates between different UI panels or uis
The problem of configuring opencv in qt5.13.2 is solved in detail
二分查找(折半查找)
Batch convert txt to excel format
U-boot initialization and workflow analysis
arcgis_ spatialjoin
Do you choose pandas or SQL for the top 1 of data analysis in your mind?
SD_CMD_SEND_SHIFT_REGISTER
Executealways of unity is replacing executeineditmode
【软件测试】04 -- 软件测试与软件开发
PHY drive commissioning - phy controller drive (II)
【软件测试】05 -- 软件测试的原则
ROS2——安装ROS2(三)
Raspberry pie 4B arm platform aarch64 PIP installation pytorch
乐鑫面试流程
【软件测试】03 -- 软件测试概述