学习杂记

int IntCmp(const void* pv1,const void* pv2) 比较大小
qsort(arr,10,sizeof(int),IntCm);
int IntCmp(const void* pv1,const void* pv2)
{
int x=(int)pv;
int y=(int)pv;
return x-y;
}

int IntCmp(const void* pv1,const void* pv2)
{
float x=(float)pv1;
float y=(float)pv2;
return x-y;

}

wfd = open(argv[2],O_WRONLY | O_CREAT | O_TRUNC,0666);

ret = read(rfd,&ch,1);
while(ret == 1)
{
write(wfd,&ch,1);
ret = read(rfd,&ch,1);
}
定义:struct Data
{
double score; //…
int len ;
char buf[1];//变长成员 最后一个
};

struct sigaction
{
void (*sa_handler)(int)//id
}

execl()其中后缀"l"代表list也就是参数列表的意思,第一参数path字符指针所指向要执行的文件路径, 接下来的参数代表执行该文件时传递的参数列表:argv[0],argv[1]… 最后一个参数须用空指针NULL作结束。

sscanf(argv[1],"%d",(int*)&pid);

struct sigaction mycat={NULL};
mycat.sa_handler=HandleINT;
sigenptyset(&mycat.sa_mask);
myact.sa_flag=0;

sigaction(SIGINT,&myact,NULL);
while(1)
{
if(gx)
{
printf(“hello\n”);

}
sleep(1);
return 0;

}

void HandleINT(void* pv)
{
if(gx0)
gx=1;
if(gx
1)
gx=0;
}

kill(pid,SIGINT);

fd_set rfds;

fd_set rfds;//实际上是一long类型的数组

while(1)
{
FD_ZERO(&rfds);
FD_SET(0,&rfds);
FD_SET(rfd,&rfds);
ret=select(rfd+1;&rfds,NULL.NULL.NULL);
if(ret<0)
{
if(errno==EINTR)
{
continue;
}
else
{
printf(“select failed\n”);
break;
}
}
if(FD_ISSET(0,&rfds))
{
fget(buf,64,stdin);
len=strlen(buf)+1;
write(wfd,buf,len);
if(strncmp(buf,“quit”,4)==0)
{
break;
}

	else
	{
		printf("Second say to me:");
	}
}
if(FD_ISSET(rfd,&rfd))
{
		read(rfd,buf,64);
		printf("Second say to me:%\n",buf);
}
close(rfd);
close(wfd);
return 0;

}

C库中的全局变量 对应的文件描述符
FILE* stdin; 0
FILE* stdout; 1
FILE* stderr; 2

N维数组实际都是一维数组,该一维数组的元素是N-1维数组
数组作为形参等价于指向元素的指针
数组定义语句的数组名是指向下标为0的元素的常量指针

功能
提供什么(形参)
结果如何

指针类型的形参可分为:

  1. 值参数:只读指向空间的内容
  2. 结果参数:只写指向空间的内容
  3. 值-结果参数:既读又写指向空间

O_WRONLY | O_CREAT | O_TRUNC

形参的本质:变量定义
实参的本质:表达式(代表一个值)
字符串常量定义:1,不可变的字符数组 2 位于数据区 3 字符串常量叫“xx”它就名字就是什么。
全局的const修饰的变量
const int gx =200;(如果你在代码中不想修改k的值,可以加const帮助提醒)
{
const int k=3;(空间在栈,但是可以通过取地址修改k的值)
}

变量按定义位置:
1,函数体外--------------全局变量 作用域:(全局数据区)
2,函数体肉--------------局部变量 作用域:(栈)
3,函数头-----------------形参 作用域:(函数体)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值