C语言再学习
文章平均质量分 89
C语言点知识总结
聚优致成
这个作者很懒,什么都没留下…
展开
-
C语言再学习 -- Linux常用网络调试工具
linux常用指令,之前我也总结了不少了。原创 2024-01-19 18:59:16 · 1510 阅读 · 1 评论 -
C语言再学习 -- C语言搭建TCP服务器/客户端
TCP/UDP讲过~这里记录一下可用的TCP服务器和客户端代码。原创 2024-01-19 15:05:17 · 1012 阅读 · 1 评论 -
C语言再学习 -- 单精度(float)和双精度(double)浮点数 与 十六进制(HEX) 之间转换(转载))
单精度浮点float:可以精确到小数点后6位双精度浮点double:可以精确到小数点后12位C可以通过f或F后缀是编译器把浮点常量当做float类型,比如2.3f和9.11E9F。l或L后缀使一个数字成为long double类型,比如54.3l和4.32e4L。建议使用L后缀,因为字母l和数字1容易混淆没有后缀的浮点常量为double类型。(重点)。例:sizeof(1.9) = 8;原创 2023-12-06 19:26:19 · 9541 阅读 · 3 评论 -
C语言再学习 -- 编程规范
C语言再学习 – 声明与定义声明一个变量只是将变量名标识符的有关信息告诉编译器,使编译器“认识”该标识符,但声明不一定引起内存的分配。而定义变量意味着给变量分配内存空间,用于存放对应类型的数据,变量名就是对相应的内存单元的命名。在C/++程序中,大多数情况下变量声明也就是变量定义,声明变量的同时也就完成了变量的定义,只有声明外部变量时例外。函数类似,声明只是告诉编译器有这个名称、类型的函数,而定义则是函数的真实实现。简单一句话,定义创建了对象并为这个对象分配了内存,声明没有分配内存。以下这些就是声明。原创 2023-11-15 16:28:47 · 905 阅读 · 1 评论 -
C语言再学习 -- 时间函数
在软件设计中经常会用到关于时间的处理,用来计算语句、函数的执行时间,这时就需要精确到毫秒甚至是微妙的时间。我们首先来介绍一下,时间单位:时间单位还有:毫秒(ms)、微秒 (μs)、纳秒(ns)、皮秒(ps)、飞秒(fs)、阿秒、渺秒 1 s = 10^3 ms = 10^6 us = 10^9 ns = 10^12 ps = 10^15 fs=10^18阿秒=10^21渺秒=1原创 2017-01-14 16:46:39 · 7543 阅读 · 0 评论 -
C语言再学习-- 大端小端详解(转)
参看:详解大端模式和小端模式一、什么是大端和小端所谓的大端模式,就是高位字节排放在内存的低地址端,低位字节排放在内存的高地址端。所谓的小端模式,就是低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。简单来说:大端——高尾端,小端——低尾端举个例子,比如数字 0x12 34 56 78在内存中的表示形式为:1)大端模式:低地址 -----------------...原创 2017-01-14 19:23:57 · 32863 阅读 · 8 评论 -
C语言再学习-- readelf、objdump、nm使用详解
在其他文章里,这三个指令用了好多次了,但是没有真正总结他们的用法,现在来讲解一下。参看:readelf命令 参看:objdump命令参看:nm命令原创 2017-01-15 13:53:31 · 7662 阅读 · 0 评论 -
C语言再学习-- assert 断言宏
描述:断言 assert 是仅在 Debug 版本起作用的宏,它用于检查“不应该”发生的情况。C 库宏 void assert(int expression) 允许诊断信息被写入到标准错误文件中。换句话说,它可用于在 C 程序中添加诊断。声明:下面是 assert() 宏的声明。void assert(int expression);参数原创 2017-01-15 14:07:51 · 3356 阅读 · 0 评论 -
C语言再学习 -- 再论数组和指针
之前有总结指针数组,但是现在看来总结的太简单了。好多重要的知识点都是一带而过的。本想在后面添加后来想想算了,还是再写一篇文章来详细介绍数组和指针这对冤家吧。之前总结的,参看:C语言再学习 -- 数组和指针一开始觉得C语言再学习专栏都写了五十篇了,现在的C语言水平至少可以说熟练掌握吧。有点洋洋得意的感觉,但是总结这章的时候,我有点急躁了。忽然觉得自己还是什么都不明白,之前的对C语言的原创 2017-01-18 10:48:07 · 3839 阅读 · 18 评论 -
C语言再学习 -- 详解C++/C 面试题 1
参看:《高质量C++ C编程指南》.林锐对这篇文章记忆犹新,因为之前找工作面试的时候,遇到过一家公司就是用的这套面试题。现在就结合考查的知识点和我总结完 C 语言再学习后的深入理解,来详细的讲讲我对这篇文章的总结。一、请填写BOOL , float, 指针变量 与“零值”比较的 if 语句。( 10 分)提示:这里“零值”可以是 0, 0.0 , FALSE 或者“空指原创 2017-01-20 10:44:20 · 4287 阅读 · 0 评论 -
C语言再学习 -- 详解C++/C 面试题 2
(经典)C语言测试:想成为嵌入式程序员应知道的0x10个基本问题。参看:嵌入式程序员面试问题集锦1、用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SENCONDS_PER_YEAR (60*60*24*365)UL解答:#define 声明一个常量,使用计算常量表达式的值来表明一年中有多少秒,显得就更加直观了。再有这个表达式的值为无符号长整形,因原创 2017-01-22 15:39:14 · 2697 阅读 · 0 评论 -
C语言再学习 -- 再论内存管理
之前有总结过内存管理,参看:C语言再学习 -- 内存管理但现在看来,缺少示例。从新再写一篇文章,着重介绍常见内存错误、跨函数使用存储区。开始吧,再论内存管理!!原创 2017-01-22 15:46:36 · 1855 阅读 · 0 评论 -
C语言再学习 -- 关于注释
C语言注释有三种情况单行注释: //多行注释: /* */#if0/1注释:#if 0#endif和#if 1#endif原创 2016-08-22 10:00:08 · 1581 阅读 · 0 评论 -
C语言再学习 -- 声明与定义
什么是定义?什么是声明?它们有何区别?举个例子:A)int i;B)extern int i; (关于 extern,后面解释)哪个是定义?哪个是声明?或者都是定义或者都是声明?我所教过的学生几乎没有一人能回答上这个问题。这个十分重要的概念在大学里从来没有被提起过!什么是定义:所谓的定义就是(编译器)创建一个对象,为这个对象分配一块内存并给它取上一个名字,这个名字就是我原创 2016-08-22 10:12:13 · 1765 阅读 · 1 评论 -
C语言再学习 -- 标识符
可供使用的字符有小写的字母、大写的字母、数字和下划线(_)。第一个字符必须是字母或者下划线。原创 2016-08-22 10:16:00 · 1477 阅读 · 0 评论 -
C语言再学习 -- 转义字符
字符表编辑所有的转义字符和所对应的意义:转义字符意义ASCII码值(十进制)\a响铃(BEL)007\b退格(BS) ,将当前位置移到前一列008\f换页(FF),将当前位置移到下原创 2016-08-22 14:03:25 · 1543 阅读 · 0 评论 -
C语言再学习 -- 浮点数
参考:你应该知道的浮点数基础知识一个有趣的实验本文从一个有趣而诡异的实验开始。最早这个例子博主是从 Stackoverflow上的一个问题中看到的。为了提高可读性,博主这里做了改写,简化成了以下两段代码:C++1234567891011121314151617#i原创 2016-08-22 14:25:52 · 2722 阅读 · 0 评论 -
C语言再学习 -- 关键字sizeof与strlen
预留好位置、之后再总结!!!先说一下,siezeof运算符提供给你的数目比strlen大1,这是因为它把用来标志字符串结束的不可见的空字符('\0')也计算在内。还有一点,sizeof是否使用圆括号取决于你是想获取一个类型的大小还是想获取某个具体量的大小。圆括号对于类型是必需的,而对于具体量则是可选的。也就是说,您应该使用sizeof(char)或sizeof(float),但是可原创 2016-08-22 16:04:19 · 3209 阅读 · 0 评论 -
C语言再学习 -- printf、scanf占位符
参看:printf()、scanf()用法总结及其格式转换说明符一、printf()printf()的返回值为输出的字符个数:例:rv = printf ("hello"); 结果为rv = 5;其格式控制如下列表所述:表一、printf()格式转换说明符注意:不要忘记给控制字符串后面的列表中的每个项目都使用一个转换说明。转换说明 ...原创 2016-08-22 17:02:10 · 19541 阅读 · 3 评论 -
C语言再学习 -- 打印长字符串
如果必须分割一个字符串,有三个钟方法#include void main (void){printf ("hhhhhhhh");printf ("aaaaaaaa\n");printf ("hhhhhhhh\aaaaaaaa\n");printf ("hhhhhhhh""aaaaaaaa\n");return 0;}输出为:h原创 2016-08-23 09:31:12 · 3844 阅读 · 0 评论 -
C语言再学习 -- 运算符与表达式
分三部分来讲一、左值与右值参看:左值与右值首先我们需要理解左值和右值的定义:左值指的是如果一个表达式可以引用到某一个对象,并且这个对象是一块内存空间且可以被检查和存储,那么这个表达式就可以做为一个左值。 右值指的是引用了一个存储在某个内存地址里的数据。从上面的两个定义可以看出,左值其实要引用一个对象,而一个对象在我们的程序中又肯定有一个名字或者可以通过一个原创 2016-08-23 15:05:09 · 2324 阅读 · 0 评论 -
C语言再学习 -- 循环语句
C语言有三种循环结构:while、for和do while。下面一次讲解一、while循环1、while介绍while(逻辑表达式) //布尔值为1 真{反复执行的语句} 只要逻辑表达式结果为真就反复不停执行大括号里的语句,直到逻辑表达式结果为假循环结束只要把逻辑表达式写成1则循环成为死循环,while(1)原创 2016-08-24 11:32:01 · 4790 阅读 · 0 评论 -
C语言再学习 -- ctype.h字符判断函数
参看:ctype.h 百度百科ctype.h是C标准函数库中的头文件,定义了一批C语言字符分类函数(C character classification functions),用于测试字符是否属于特定的字符类别,如字母字符、控制字符等等。既支持单字节(Byte)字符,也支持宽字符。 ctype.h里的函数概况1 字符测试函数1> 函数原型均为int isxxx原创 2016-08-25 11:25:02 · 3701 阅读 · 0 评论 -
C语言再学习 -- 分支与跳转语句
一、if语句形式1:if (逻辑表达式)执行语句如果逻辑表达式为真,则执行执行语句形式2:if (逻辑表达式)执行语句1else执行语句2如果逻辑表示是为真则执行执行语句1,否则执行执行语句2形式3:if (逻辑表达式1)执行语句1else if (逻辑表达式2)执行语句2else执行语句3如果逻辑表达式1为真,则自行原创 2016-08-25 15:30:27 · 2438 阅读 · 0 评论 -
C语言再学习 -- 输入/输出
一、缓冲区输入字符的立即回显是非缓冲或直接输入的一个实例,它表示你说键入的字符被手机并存储在一个呗成为缓冲区的李世存储区域中。按下回车可使你所键入的字符块对程序变成可用。为什么需要缓冲区?首先,将若干个字符作为一个块传输比逐个发送这些字符耗费的时间少。其次,如果你输入有误,就可以使用你的键盘更正功能来修改错误。当最终按下回车键时,你就可以发送正确的输入。另一个方面,一些交互性的程序需要非缓原创 2016-08-25 18:24:47 · 3769 阅读 · 0 评论 -
C语言再学习 -- 函数
一、函数概述1、首先什么是函数?函数是用于完成特定任务的程序代码的自包含单元。2、为什么使用函数?第一、函数的使用可以身故重复代码的编写。第二、函数使得程序更加模块化,有利于程序的阅读修改和完善。3、main函数原型int main (int argc, char * argv[], char * envp[]) {....}第一个参数:命令行参数的个数第二个参数:原创 2016-08-29 12:56:51 · 2056 阅读 · 0 评论 -
C语言再学习 -- 数组和指针
一、数组1、数组介绍数组(array)由一系列类型相同的元素构成。例如:int arr[10];float candy[25];char code[12];以上数组声明中包括数组元素的数目和元素的类型。数组元素按顺序存储于内存中,通过使用整数索引(或偏移量)来访问。在C中,首元素的索引值为0,因此包含n个元素的数组的末元素的索引为n-1。2、数组初始化A、可以使用花原创 2016-08-30 16:12:22 · 1851 阅读 · 0 评论 -
C语言再学习 -- 字符串和字符串函数
最近身体很不给力,很乏累!白天没精神,晚上睡不着,心情还很烦躁。看书都有点看不下去的样子,到了C语言最难掌握的部分了,数组、指针、字符串。硬着头皮看书总结吧。一、字符串1、字符串介绍字符串是以空字符(\0)结尾的char数组,例如:char ar[20] = "hello world"; 2、定义字符串字符常量,又称字符串文字,是指位于一对双引号中的任何字符。双...原创 2016-09-01 09:27:55 · 5180 阅读 · 3 评论 -
C语言再学习 -- 存储类、链接
这一章是我看的时间最长的一章了,表面上是有很多关键字和几个函数需要学习,其实我知道是自己最近不在状态了,做项目没进展,看书看不下去,两头都放不下,最后两头都没有做好。不由的想起一句话,你不快乐是因为:你可以像只猪一样懒,却无法像只猪一样,懒得心安理得。一、存储类C为变量提供了5种不同的存储类型,或称存储类。下面是C的5种存储类:自动 —— 在一个代码块内(或在一个函数头部作为参量)原创 2016-10-25 16:33:11 · 1991 阅读 · 0 评论 -
C语言再学习--关键字
如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/53021879C语言一共有32个关键字,如下表所示: 关键字 说明 auto 声明自动变量 short 声明短整型变量或函数 int...原创 2016-11-03 15:21:54 · 4310 阅读 · 2 评论 -
C语言再学习 -- 负数
计算机中的负数是以其补码形式存在的 补码=原码取反+1一个字节有8位 可以表示的数值范围在 -128到+127用二进制表示也就是 10000000 - 01111111(注意:最高位表示符号)最高位是1的都是负数 最高位是0的都是正数二进制数是逢二进一 只有0和1两个数字 没有2如-7 原码是 10000111 然后取反(最高位是符合不用取反)得11111000加一 得原创 2016-11-04 11:22:12 · 13730 阅读 · 2 评论 -
C语言再学习 -- 关键字void
参看:C语言关键字void 用途:1、对函数返回的限定,用于强调函数没有返回值。如,void func(int x);2、对函数参数的限定,用于强调函数没有任何参数。如,int func(void);3、指向void的指针。如 void *vp = NULL;4、丢掉函数调用的返回值。如, int func(int x); (void)func(5);5、(void)0,原创 2016-11-07 09:33:50 · 3294 阅读 · 0 评论 -
C语言再学习 -- 随机数函数
#include rand ()函数:可以用来获得一个随机数#include srand ()函数:可以用来设置随机数的种子#include time ()函数:可以返回系统时间/* 1--100 rand()%100+1 随机数 输入一个数字 与随机数比较 猜大了 猜小了 猜对了 */#include #include #include原创 2016-11-07 12:29:27 · 2102 阅读 · 1 评论 -
C语言再学习 -- 内存管理
的风原创 2016-11-07 15:03:09 · 4363 阅读 · 1 评论 -
C语言再学习 -- 文件
一、文件是什么一个文件(file)通常就是磁盘上的一段命名的存储区。C 将文件看成是连续的字节序列,其中每一个字节都可以单独地读取。1、标准文件C 程序自动打开3个文件。这3个文件被称为标准输入,标准输出和标准错误输出。默认的标准输入是系统的一般输入设备,通常为键盘;默认的标准输出和标准错误输出是系统的一般输出设备,通常为显示器。原创 2016-11-09 10:32:32 · 2548 阅读 · 0 评论 -
C语言再学习 -- 关键字return和exit ()函数
占楼return 用法exit的宏 EXIT_SUCCESS EXIT_FAILURE原创 2016-11-09 10:29:26 · 17747 阅读 · 1 评论 -
C语言再学习 -- EOF、feof函数、ferror函数
EOF是end of file的缩写,表示"文字流"(stream)的结尾。这里的"文字流",可以是文件(file),也可以是标准输入(stdin)。EOF不是特殊字符,而是一个定义在头文件stdio.h的常量,一般等于-1。#define EOF (-1)在C语言中,或更精确地说成C标准函数库中表示文件结束符(end of file)。在while循环中以EOF作为文件结束标志,原创 2016-11-09 15:47:45 · 13586 阅读 · 2 评论 -
C语言再学习 -- 位操作
一、二进制二进制是计算技术中广泛采用的一种数制。二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。位:"位(bit)"是电子计算机中最小的数据单位。每一位的状态只能是0或1。字节:8个二进制位构成1个"字节(Byte)",它是存储空间的基本计量单位。1个字节可以储存1个英文字母或者半个汉字,换句原创 2016-11-14 10:20:42 · 4099 阅读 · 0 评论 -
C语言再学习 -- C 预处理器
一、#define原创 2016-11-14 14:48:57 · 5011 阅读 · 5 评论 -
C语言再学习 -- 常用头文件和函数(转)
参看:C/C++常用头文件及函数汇总linux常用头文件如下:POSIX标准定义的头文件 目录项 文件控制 文件名匹配类型 路径名模式匹配类型 组文件 网络数据库操作 口令文件 正则表达式 TAR归档值 终端I/O 符号常量 文件原创 2016-11-18 10:06:05 · 4426 阅读 · 1 评论