C语言代码复习笔记:第二章
输出星星
#include <stdio.h>
void printStart( int num ) {
while(num-->) {
printf("*");
};
}
int main() {
int n = , i;
for(i=; i<n; i++) {
printStart(i);
printf("\n");
}
printStart();
return ;
}
默认情况下, C++函数按照值传递参数, 这就意味着函数中定义的形参是新的变量, C函数通过通过使用拷贝, 保护了原始数据的完整性;
虽然C语言数组名就是一个地址指针, 但是它们仍然还是按照值传递的;
如果参数是数组的话, 默认传递的是数组的复制品:
#include <stdio.h>
void change(int array[]) {
array[] = ;
}
int main() {
int arr[] = {,};
printf("arr的第一个值是:%d\n", arr[]);
change(arr);
printf("arr的第一个值是:%d\n", arr[]);
return ;
}
输出为:
arr的第一个值是:
arr的第一个值是:
如果参数为数组,接收的参数设置为指针, 修改指针即会修改原来的数组:
#include <stdio.h>
void change(int *p) {
p[] = ;
}
int main() {
int arr[] = {,};
printf("arr的第一个值是:%d\n", arr[]);
change(arr);
printf("arr的第一个值是:%d\n", arr[]);
return ;
}
从一堆数组中找出指定的的数字:
#include <stdio.h>
#define NUMBER 5
int search(int *p, int n) {
int index = ;
printf("string\n");
while(true) {
if(*(p+index) == n) {
return index+;
}
printf("%d\n", *p);
index++;
}
return -;
} int main() {
int arr[NUMBER] = {};
int num;
int i = ;
for(i=; i<NUMBER; i++) {
printf("输入索引为%d的值\n", i);
scanf("%d",&arr[i]);
}
printf("输入需要查找的数字\n");
scanf("%d", &num);
int index = search(arr, num);
printf("找到的索引为%d", index);
return ;
}
静态变量, 静态变量
#include <stdio.h>
int foo = ;
void func() {
static int sx = ;
foo++;
sx++;
printf("%d--%d\n", foo, sx);
}
int main() {
func();
func();
func();
func();
return ;
}
输出:
--
--
--
--
如果声明了静态变量, 那么这个变量就会和函数挂钩, 相对于函数的属性, 静态变量只会初始化一次
数字后面不同的后缀,说明了不同的类型;
1u:unsigned int
1l:long
1ll: long long
1UL:unsigned long
0.5f:float
查看二进制数字包含1的进制位:
#include <stdio.h>
int count_bit(unsigned x) {
int count = ;
while(x) {
if(x & 1U) count++;
x >>= ;
}
return count;
}
int main() {
unsigned bits = ;
int length = count_bit(bits);
printf("length is %d\n", length);
return ;
}
如果数据太大, 超出了能够存储的大小, 计算结果会出现问题, 尴尬
C语言代码复习笔记:第二章的更多相关文章
- 《时间序列分析及应用:R语言》读书笔记--第二章 基本概念
本章介绍时间序列中的基本概念.特别地,介绍随机过程.均值.方差.协方差函数.平稳过程和自相关函数等概念. 2.1时间序列与随机过程 关于随机过程的定义,本科上过相关课程,用的是<应用随机过程&g ...
- 《DOM Scripting》学习笔记-——第二章 js语法
<Dom Scripting>学习笔记 第二章 Javascript语法 本章内容: 1.语句. 2.变量和数组. 3.运算符. 4.条件语句和循环语句. 5.函数和对象. 语句(stat ...
- The Road to learn React书籍学习笔记(第二章)
The Road to learn React书籍学习笔记(第二章) 组件的内部状态 组件的内部状态也称为局部状态,允许保存.修改和删除在组件内部的属性,使用ES6类组件可以在构造函数中初始化组件的状 ...
- [HeadFrist-HTMLCSS学习笔记]第二章深入了解超文本:认识HTML中的“HT”
[HeadFrist-HTMLCSS学习笔记]第二章深入了解超文本:认识HTML中的"HT" 敲黑板!!! 创建HTML超链接 <a>链接文本(此处会有下划线,可以单击 ...
- Android群英传笔记——第二章:Android开发工具新接触
Android群英传笔记--第二章:Android开发工具新接触 其实这一章并没什么可讲的,前面的安装Android studio的我们可以直接跳过,如果有兴趣的,可以去看看Google主推-Andr ...
- 20172327 2018-2019-1 《第一行代码Android》第二章学习总结
学号 2017-2018-2 <第一行代码Android>第二章学习总结 教材学习内容总结 - 活动是什么: 活动(Activity)是最容易吸引用户的地方,它是一种可以包含用户界面的组件 ...
- 深入理解 C 指针阅读笔记 -- 第二章
Chapter2.h #ifndef __CHAPTER_2_ #define __CHAPTER_2_ /*<深入理解C指针>学习笔记 -- 第二章*/ /* 内存泄露的两种形式 1.忘 ...
- STL源码分析读书笔记--第二章--空间配置器(allocator)
声明:侯捷先生的STL源码剖析第二章个人感觉讲得蛮乱的,而且跟第三章有关,建议看完第三章再看第二章,网上有人上传了一篇读书笔记,觉得这个读书笔记的内容和编排还不错,我的这篇总结基本就延续了该读书笔记的 ...
- Java编程思想笔记(第二章)
第二章 一切都是对象 尽管Java是基于C++的,但相比之下,Java是一种更纯粹的面向对象程序设计语言. c++和Java都是杂合型语言(hybird language) 用引用(referenc ...
随机推荐
- PHP开启curl_init
windows主机出现“Call to undefined function curl_init”错误提示,没有定义的函数,也就是php还没打开对curl_init函数的支持. 全文:http://j ...
- 使用Axure RP原型设计实践01,使用概述
首先认识Axure RP Pro 7.0软件的默认界面布局.最上面的是工具栏区域,左侧上方的是网站地图区域(sitemap),左侧中部的是部件区域(Widgets),左侧下方的是模板区域(Master ...
- canvas使用1
画直线: ? 1 2 3 4 5 6 7 8 9 10 11 var c = document.getElementById("myCanvas"); //不要忘写document ...
- C#编程(十九)----------部分类
部分类 C#中使用关键字partial把类,结构或结构放在多个文件中.一般情况下,一个类全部驻留在单个文件中.但有时候,多个开发人员需要访问同一个类,或者某种类型的代码生成器生成了一个类的某部分,所以 ...
- 迭代dict的value
我们已经了解了dict对象本身就是可迭代对象,用 for 循环直接迭代 dict,可以每次拿到dict的一个key. 如果我们希望迭代 dict 对象的value,应该怎么做? dict 对象有一个 ...
- Linux tar包相关命令
tar [-j|-z][cv][-f 新建的文件名] filename... <==打包与压缩 tar [-j|-z][tv][-f 新建的文件名] <==查看文件名 tar [-j| ...
- [Android Pro] 自己动手编译Android源码(超详细)
cp from : https://www.jianshu.com/p/367f0886e62b 在Android Studio代码调试一文中,简单的介绍了代码调试的一些技巧.现在我们来谈谈andro ...
- SKU与SPU
首先,搞清楚商品与单品的区别.例如,iphone是一个单品,但是在淘宝上当很多商家同时出售这个产品的时候,iphone就是一个商品了. 商品:淘宝叫item,京东叫product,商品特指与商家有关的 ...
- cocos2d-js中Chipmunk物理引擎相关(1)
近期看些cocos2d-js的东西.用到当中的Chipmunk的一些东西.由于相关的资料也不是非常具体,所以看到一些东西实用就记录下来. 1. chipmunk是cocos2d的一个一个物理引擎.用来 ...
- String、StringBuffer与StringBuilder之间区别(转)
原文链接:String.StringBuffer与StringBuilder之间区别 最近学习到StringBuffer,心中有好些疑问,搜索了一些关于String,StringBuffer,Stri ...