25 lines
928 B
C
25 lines
928 B
C
#include <stdio.h>
|
||
#include <sys/types.h>
|
||
#include <sys/ipc.h>
|
||
|
||
// ftok()函数用于获取消息队列的键值
|
||
int main()
|
||
{
|
||
// 获取消息队列的键值,返回值是一个整数,表示消息队列(IPC)的键值
|
||
key_t key = ftok("/", 26);
|
||
printf("key = %d\n", key);
|
||
|
||
// ftok()函数的第一个参数是路径,第二个参数是索引值
|
||
// 索引值是一个整数,范围是0~255,用于区分不同的消息队列
|
||
// 超过255的索引值会被截断,例如256会被截断为0,257会被截断为1,相当于循环使用
|
||
key_t key2 = ftok("/", 26);
|
||
printf("key = %d\n", key2);
|
||
|
||
int mask = 0xff; // 0b11111111 低8位掩码
|
||
printf("mask = %d\n", mask);
|
||
// 低8位掩码与key进行与运算,得到低8位
|
||
printf("key & mask = %d\n", key & mask); // 用于获取低8位
|
||
printf("key2 & mask = %d\n", key2 & mask); // 用于获取低8位
|
||
|
||
return 0;
|
||
} |