阶码的数学表示是什么意思?
就是这个数就像有一个飘动的小数点,也就是我们学数学中说的科学计数法。
它由阶码和尾码组成,也就是科学计数法中说的有效数字和指数组成, 类似这样 1.0*10^9,这样这个数就是10亿,我们只用记录1和9这两个关键数就可以表示10亿,所占空间小只有2个数,如果写成普通的数就是100000000,这样你就需要记录1个1和9个0,占据空间大,这种数的小数点不是飘动的,所以叫定点数不叫浮点数,需要记录小数点向前向后的所有数,占用空间和有效数字个数无关,和位数有关,会占用更多空间,浮点数比较节省空间,用浮点数表示小数也非常好,所以计算机里的小数,和位数比较高的数都用浮点数,你不可能因为1亿亿+2亿亿也用int型。浮点数就是科学计数法,不同的是计算机里是2进制浮点数,我们的1.3e-10这种类型的数是十进制的浮点数。
拓展资料
1.有符号整型在C语言中,有符号整形变量a用signed int a表示,通常我们写的int a默认为有符号整型。
根据程序编译器的不同,整形定义的字节数不同。常用的单片机编译器,如KEIL下,51类单片机的C语言中,int代表2个byte(16位);如果是32位ARM处理器的C语言中,则int代表4个byte(32位)。而不少PC端软件的编译器则会根据操作系统或处理器(如64位XP)把int定义为8 byte(64位),(如32位XP)把int定义为4 byte(32位)。
2.无符号整形
在C语言中,无符号整形变量b用unsigned int b表示。
在32位的xp系统中,对于无符号整形变量b, signed short int b,b为16位。
3、字符型
在 C语言中,字符c用char c表示,char在标准中是unsigned, 编译器可以实现为带符号的,也可以实现为不带符号的。
在VC6.0及linux下char 范围为,如下
char a=127;
a=a+1; /*现在a的值为-128*/
unsigned char b=255;
b+=1; /*现在b的值为0*/
4、浮点型
浮点型包括单浮点型float,双浮点型double,浮点型数据均为有符号型。
关于uname函数,发布级别,发布版本是什么东西?
“发布级别”对应的是utsname结构中release;
“发布版本”对应的是utsname中的version。
这个翻译容易引起歧义;而原文或Linux/Unix中的这个命名,也由于历史的原因,也容易误导用户。
release – 其实是真正意义上的Linux内核版本号,就是内核发布的时候的编译版本号,比如3.11.0。
version – 这里反而没有版本号的原意,它是内核release时候的编译日期。
所以原文文件中,用的是kernel release level和kernel version level,而不是简单的(version)number。
C语言字符串类型?
1.1 C语言没有原生字符串类型
1)很多高级语言像java、C#等就有字符串类型,有个String来表示字符串,用法和int这些很像,可以String s1 = "linux";来定义字符串类型的变量。
2)C语言没有String类型,C语言中的字符串是通过字符指针来间接实现的。
1.2 C语言使用指针来管理字符串
C语言中定义字符串方法:char *p = "linux";此时p就叫做字符串,但是实际上p只是一个字符指针(本质上就是一个指针变量,只是p指向了一个字符串的起始地址而已)。
1.3 C语言中字符串的本质:指针指向头、固定尾部 的地址相连的一段内存
1)字符串就是一串字符。字符反映在现实中就是文字、符号、数字等人用来表达的字符,反映在编程中字符就是字符类型的变量。C语言中使用ASCII编码对字符进行编程,编码后可以用char型变量来表示一个字符。字符串就是多个字符打包在一起共同组成的。
linux/unix进程的创建?
代码示例:
#include<unistd.h>
#include<sys/types.h>
#include<stdio.h>
int main(int argc,char *arg)
{
int pid;
pid=fork();
if(pid<0){
fprintf(stderr,”进程创建失败”);
exit(-1);
}
else if(pid==0){
execlp(“/bin/ls”,”ls”,NULL);
}
else{
wait(NULL);
printf(“子进程已完成”);
exit(0);
}
}
linux中正则表达式file*.c dir?char.o的含义?
这个应该不是正则表达式而是linux下面的文件通配符
* 匹配文件名中的任何字符串,包括空字符串。
? 匹配文件名中的任何单个字符。
匹配中所包含的任何字符。
一般用于cp mv ls 类似的命令,通配文件
像 file*.c 就表示 fileafasf.c 这样类似的文件名,像上面的全部放到一起具体还不知道是什么?
一个很长的包含空格的文件名?