学C日志
学C历程 这里记录的都是笔记 忘记了好回头看看~
提示 :如果在双击自己编译的程序运行时一下就消失不见了 可以在程序代码末尾加上 system("pause"); 程序就会等待到输入一个字符再继续
//gcc -c 编译为目标文件
//gcc -E 只进行预处理
//gcc -o 设定生成的文件
//gcc 文件名 //一键编译
1.#include <stdio.h> 与#include "stdio.h" 的区别 搜索相关头文件的优先级不同
< >是直接在系统提供的头文件中进行调用
" "是在当前目录下进行搜索,如果没有再搜索系统提供的头文件
2.创建有返回值与空返回值的函数(方法)
语法:返回类型 方法名(参数类型 参数名,参数类型 参数名){ 代码 }
例:返回int类型的方法 int sum(int x,int y){ return x + y;}
返回空类型的方法 void sum(int x,int y){
printf("这是个没有返回值的方法");
}
创建一个返回数组类型的方法: int* nums(){
static int num[3] = {1,2,3};
return num;
}
因为返回的是指针类型的 int*,所以接受的时候也要用int*接受
int* n = nums();
3.创建变量 赋值
语法:数据类型 变量名;
例 :int num;
num=10;
创建并赋值 : int num = 10;
创建一个全局的变量:在方法的外面谢 int num = 10; 该变量可以在任何地方使用
创建一个静态的变量:static int num = 10;
静态变量会在编译时就保存在内存中,所以在程序运行到该行代码时会跳过,该变量可以在任何地方使用
4.创建数组
int nums[3] = {4,5,6}; 3表示数组的长度 大括号内表示数组的值为4,5,6;
数组的使用:
printf("%d\n",nums[0]);数组的第一个值的下标从0开始计算
获取数组的长度:
int arry[] = {111,99,44,55,231};
// 总长度除以单个的长度,即得数组的个数count。
int count = sizeof(arry)/sizeof(int);
printf("%d\n", count); 输出 5
5.循环
使用for 循环 输出 一个数组
int arry[] = {111,99,44,55,231};
// C语音获取一个数组的长度
// 总长度除以单个的长度,即得数组的个数count。
count = sizeof(arry)/sizeof(int); //count=5
int i = 0;
for (i = 0; i < count; ++i)
{
printf("The number is greater than 100:%d\n", arry[i]);
}
system("pause");
使用while循环 输出 一个数组
int arry[] = {111,99,44,55,231};
// C语音获取一个数组的长度
// 总长度除以单个的长度,即得数组的个数count。
count = sizeof(arry)/sizeof(int); //count=5
int i = 0;
while (i < count)
{
printf("The number is greater than 100:%d\n", arry[i]);
i++;
}
system("pause");
结果一样
6.if(判断表达式) {} 语法
大括号内如果只有一条语句 可以省略不行
if(1+1 == 2)
printf("正确");
7.什么是形变实不变?
当main函数里面调用外部的一个方法的时候, 即使方法内的参数发生改变,实际参数还是不变。
void add(int num){ ++num;} //此时的num 为形参
void add1(int* num){ ++num;} //此时的num 为传过来的地址,该地址指向的值发生改变后,main函数里面的实参也会发生改变
void main()
{
int num = 5; //此时的num为 实参
add(num);
printf(num);//输出5
//所以要传这个变量的地址过去
add1(&num); //&变量名 表示获取该变量的地址
printf(num);输出6
}
8.创建结构体
typedef struct cars //typedef 表示 给这个结构体取一个别名 为大括号后面的 car
{
//当前的车名
int price;
char name;
}car;
使用 car *c = malloc(sizeof(car)); //malloc方法需要调用 #include <stdlib.h> 这个库文件 表示分配内存
c->price = 100;
printf(c->price);//输出100
9.指针
指针:指向一个变量的地址
int num = 5;
int *p = # //获取num变量的地址 赋给 指针p
p = 6; //给该指针指向的地址的值改成6
printf("%d\n",num);//输出6
printf("%d\n",p); //输出6
10.防止头文件重复调用
#ifndef "stdio.h"
#define "stdio.h"
main(){}
#endif
学C日志的更多相关文章
- Asp.Net Core 轻松学-利用日志监视进行服务遥测
前言 在 Net Core 2.2 中,官方文档表示,对 EventListener 这个日志监视类的内容进行了扩充,同时赋予了跟踪 CoreCLR 事件的权限:通过跟踪 CoreCLR 事件 ...
- Asp.NETCore轻松学系列阅读指引目录
前言 耗时两个多月,坚持写这个入门系列文章,就是想给后来者更好更快的上手体验,这个系列可以说是从入门到进阶,适合没有 .NETCore 编程经验到小白同学,也适合从 .NET Framework 迁移 ...
- Asp.Net Core 轻松学系列-1阅读指引目录
https://www.cnblogs.com/viter/p/10474091.html 目录 前言 1. 从安装到配置 2. 业务实现 3. 日志 4. 测试 5. 缓存使用 6.网络和通讯 7. ...
- 目录---Asp.NETCore轻松学系列【目录】
随笔分类 - Asp.NETCore轻松学系列 Asp.NETCore轻松学系列阅读指引目录 摘要: 耗时两个多月,坚持写这个入门系列文章,就是想给后来者更好更快的上手体验,这个系列可以说是从入门到进 ...
- 【目录】Asp.NETCore轻松学系列
随笔分类 - Asp.NETCore轻松学系列 Asp.NETCore轻松学系列阅读指引目录 摘要: 耗时两个多月,坚持写这个入门系列文章,就是想给后来者更好更快的上手体验,这个系列可以说是从入门到进 ...
- 循序渐进学.Net Core Web Api开发系列【10】:使用日志
系列目录 循序渐进学.Net Core Web Api开发系列目录 本系列涉及到的源码下载地址:https://github.com/seabluescn/Blog_WebApi 一.本篇概述 本篇介 ...
- 【菜鸟学Linux】Cron Job定期删除Log(日志)文件
以前一直做Windows开发,近期的项目中要求使用Linux.作为小菜鸟一枚,赶紧买了一本经典书<鸟哥的Linux私房菜>学习.最近刚好有一个小任务 - 由于产品产生的Log很多,而且增长 ...
- 基于日志处理的ElasticSearch的学(gen)习(feng)
最近学了点solr,然后有听说了ElasticSearch,就想着也学一下ElasticSearch,然后看见了ElasticSearch用于日志的收集的分析,这里就来学习一下. 百度一下Elasti ...
- 54. spring boot日志升级篇—logback【从零开始学Spring Boot】
在<44. Spring Boot日志记录SLF4J>章节中有关相关的介绍,这里我们在深入的了解下logback框架. 为什么要使用logback ? --在开发中不建议使用System. ...
随机推荐
- String使用机制及string.equals()和==的区别(转)
http://904582819.blog.163.com/blog/static/11159282020127794456840/ equals方法和==的区别 首先大家知道,String既可以 ...
- css3 文字轮番滚动效果2——改进版
1.优化了之前的代码: 2.修正了先前按照文字的条目的数量计算速度的问题,现在改为按照字符的个数计算动画执行一次需要的时间,更为精确: 3.增添了每一行JS代码的注释. 4.这个案例的用途一般为告警信 ...
- Extjs中引入JSP页面
有的时候,我们可能要在某个panel中动态的引入一个jsp页面.但是ext中貌似没有这样的方法,所以这时候需要我们自定义一个组件来完成我们的需求. 1.首先定义我们的penel. Ext.define ...
- C# OOP 重要部分全解
如果你有耐心,那就请你慢慢的往下看,肯定有你用的到的地方,请你相信我! 现在你看到的只是其中一部分后面,还有,还没更新出来,待续.... 类对象的定义 类是现实世界或思维世界中的实体在计算机中的反映, ...
- ios中自定义cell 设置cell的分组结构
ios系统默认的cell并不能满足我们的需求 这个时候就需要自定义我们的cell 自定义cell为分组的时候 需要设置分组样式 以下是我常用分组的二种方法: 第一是 在自定义的UITableView ...
- 【转】Unity3d + NGUI 的多分辨率适配
原文地址:http://www.cnblogs.com/cqgreen/p/3348154.html 一.当下移动设备的主流分辨率(数据来自“腾讯分析移动设备屏幕分辨率分析报告”) 1.1 iOS ...
- PCH文件
作用:xcode5 自带的一个文件,xcode以后这个文件需要自己手动创建(这个是xcode5 和xcode6最大的区别)提前编译文件,一般情况下.我们在pch文件中#import一些项目中常用的软件 ...
- 黑马程序员:Java编程_7K面试题之银行业务调度系统
=========== ASP.Net+Android+IOS开发..Net培训.期待与您交流!=========== 模拟实现银行业务调度系统逻辑,具体需求如下: 银行内有6个业务窗口,1 - 4号 ...
- iOS UIPickerView 显示全国省市
效果图 #import "ViewController.h" @interface ViewController () @property(strong,nonatomic)UIP ...
- EM界面 ORA-12505: TNS: 监听程序当前无法识别连接描述符中所给出的 SID (DBD ERROR: OCIServerAttach)
我的是10g,打开EM,另外都正常,就有这个问题到实例的代理连接 状态 失败 详细资料 ORA-12505: TNS: 监听程序当前无法识别连接描述符中所给出的 SID (DBD ERROR: OCI ...