C语言
Tinghua_M
你若安好,我便晴天!
展开
-
统计某次操作(函数)耗时时长
Linux时间函数之gettimeofday()使用方法原创 2022-06-01 13:38:54 · 829 阅读 · 0 评论 -
二维数组和指针
要用指针处理二维数组,首先要解决从存储的角度对二维数组的认识问题。我们知道,一个二维数组在计算机中存储时,是按照先行后列的顺序依次存储的,当把每一行看作一个整体,即视为一个大的数组元素时,这个存储的二维数组也就变成了一个一维数组了。而每个大数组元素对应二维数组的一行,我们就称之为行数组元素,显然每个行数组元素都是一个一维数组下面我们讨论指针和二维数组元素的对应关系,清楚了二者之间的关系,就原创 2012-10-17 11:12:20 · 1665 阅读 · 1 评论 -
深入理解指针之必看
一。指针的概念 指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。1。 指针的类型 从语法的角度看,你只要把指针声明语句里的指针名字去掉,剩下的部分就是这个指针的类型。这是指针本身所具有的类型。让我们看看例一中各个原创 2012-07-31 15:40:06 · 3248 阅读 · 4 评论 -
C中结构体大小的计算
最近研究了一下c语言中结构体大小的计算,根据自己的理解以及参考网上的资料,想做一点总结。 先介绍一个相关的概念——偏移量。偏移量指的是结构体变量中成员的地址和结构体变量地址的差。结构体大小等于最后一个成员的偏移量加上最后一个成员的大小。由于存储变量时地址对齐的要求,编译器在编译程序时会遵循两条原则:一、结构体变量中成员的偏移量必须是成员大小的整数倍(0被原创 2012-10-18 16:26:22 · 4746 阅读 · 6 评论 -
指针数组和数组指针
#include #include int main(){ int i,j; int a[3][2] = {{1,2},{3,4},{5,6}}; int *p = a[0]; int (*q)[2];//数组指针 q是一个指针,指向一维数组,每个一维数组有2个元素,所以q是行指针 q = a; int *ptr[3];//指针数组,ptr有3个元素,原创 2012-11-05 12:18:37 · 983 阅读 · 2 评论 -
gets函数有问题?
最近在学习gets函数时,遇到了一点小问题,当时有点想不通,代码如下:#include int main(){ char a,b,c,d,e,f; printf("%p\t%p\n",&a,&f); gets(&a); putchar(a); putchar(b); putchar(c); putchar(d); putchar(e); putchar(f)原创 2013-04-28 11:11:02 · 1416 阅读 · 3 评论 -
为什么计算机用补码存储数据
在计算机内部,所有信息都是用二进制数串的形式表示的。整数通常都有正负之分,计算机中的整数分为无符号的和带符号的。无符号的整数用来表示0和正整数,带符号的证书可以表示所有的整数。由于计算机中符号和数字一样,都必须用二进制数串来表示,因此,正负号也必须用0、1来表示。通常我们用最高的有效位来表示数的符号(当用8位来表示一个整数时,第8位即为最高有效位,当用16位来表示一个整数时,第16位即为最高有效位转载 2013-04-17 09:30:21 · 799 阅读 · 0 评论 -
scanf()函数用法小结
scanf()函数是格式化输入函数,它从标准输入设备(键盘) 读取输入的信息。其调用格式为: scanf("格式化字符串>",);格式化字符串包括以下三类不同的字符;1、格式化说明符:格式化说明符与printf()函数中的格式说明符基本相同。但和printf()函数中格式字符串的用法有一些小区别。我们来看下面这个表。格式字符原创 2013-01-25 20:46:59 · 123550 阅读 · 6 评论 -
函数指针数组
函数指针数组的定义方法,有两种:一种是标准的方法;一种是蒙骗法。第一种,标准方法:{分析:函数指针数组是一个其元素是函数指针的数组。那么也就是说,此数据结构是是一个数组,且其元素是一个指向函数入口地址的指针。根据分析:首先说明是一个数组:数组名[]其次,要说明其元素的数据类型指针:*数组名[].再 次,要明确这每一个数组元素是指向函数入口地址的指针:函数返回值类型 (*数组转载 2012-11-07 07:08:09 · 823 阅读 · 0 评论 -
strcmp函数和strcpy函数
strcmp 原型:extern int strcmp(char *s1,char * s2); 用法:#include 功能:比较字符串s1和s2。 说明: 当s1<s2时,返回值<0 当s1=s2时,返回值=0 当s1>s2时,返回值>0 实际上原创 2012-09-25 09:30:41 · 1082 阅读 · 2 评论 -
在c语言中执行shell命令
头文件:#include 定义函数:int system(const char * string);函数说明:system()会调用fork()产生子进程, 由子进程来调用/bin/sh-c string 来执行参数string 字符串所代表的命令, 此命令执行完后随即返回原调用的进程. 在调用system()期间SIGCHLD 信号会被暂时搁置,SIGINT 和SIGQUIT 信转载 2012-09-13 11:18:28 · 1432 阅读 · 0 评论 -
指针函数和函数指针--我的一点见解
函数指针和指针函数,很多同学分不清楚,其实我们没有必要刻意去区分他们的概念,可以自己写一个例子,就很容易明白他们各自的用途了! #include #include #include int test(int m, int n, int (*Pfunc)(int a, int b));int add(int, int);int minus(int a, int b);原创 2012-07-31 09:40:20 · 795 阅读 · 0 评论