2022
08-12
08-12
一篇文章带你了解C语言操作符
目录一、操作符分类 二、算术操作符三、移位操作符1、左移操作符 2、右移操作符2.1算术移位 2.2逻辑移位 四、位操作符 1、按位与 2、按位或3、按位异或 4、一道练习题 五、赋值操作符1、赋值操作符(=)是一个很棒的操作符,他可以让你得到一个你之前不满意的值。也就是你可以对其重新赋值。 2、赋值操作符可以连续使用 3、复合赋值符六、单目操作符 1、逻辑反操作 2...
继续阅读 >
目录总结我们常常需要对数据进行查找,修改,查找数据有许多方法,我们先看看最简单的顺序查找intmain(){inti,k=0;scanf("%d",&k);intarr[]={0,1,2,3,4,5,6,7,8,9,10};intsz=sizeof(arr)/sizeof(arr[0]);for(i=0;i<sz;i++){if(arr[i]==k){printf("找到了,它是%d",arr[i]);}}return0;}顺序查找绝大多数情况有效但是由于它是一个一个元素进行查找,其效率很低,只有一个for...
module_init这个函数对做驱动的人来说肯定很熟悉,这篇文章用来跟一下这个函数的实现。在include/linux/init.h里面有module_init的定义,自然,因为一个module可以在内核启动时自动加载进内核,也可以由我们手动在需要时加载进内核,基于这种场景,内核使用了MODULE这个宏,见代码:#ifndefMODULE#ifndef__ASSEMBLY__...#define__define_initcall(level,fn,id)\staticinitcall_t__initcall_##fn##id__attribute_used__...
目录总结JNI的静态注册就是Javah生成头文件,本章第一篇已经讲过,现在我们来讲讲第二种方式,JNI动态注册。首先是module的build.gradle:android{compileSdkVersion30buildToolsVersion"30.0.3"defaultConfig{applicationId"com.jhzl.a7_jni_2way"minSdkVersion21targetSdkVersion30versionCode1versionName"1.0"testInstrumentationRunner"androidx.test.r...