C语言里:为什么不能将int型变量直接赋值给指向int型变量的指针
C语言里:为什么不能将int型变量直接赋值给指向int型变量的指针
int a ;
int *p;
p=a; 不行 只能将地址给p
p= &a; p指向a
p = (int *)a ; 把a强制转换成地址给p
C语言中,如何将long int型变量的地址赋给char型变量?
你的意思是否是把long int变量的地址赋给char型变量指针?
如果是这样的话:
char* pch = (char *)&long-int-var 即可.
如果是地址赋给char型变量的话,是不可能的,因为char一般只有一个字节,而地址一般有4个字节。
希望能够帮助到你,如果还有什么疑问,请留言。
char型变量左移8位赋值给int型变量的问题
要先转int再左移
比如
char c=0x12;
int a= (int)c<<8;
-32100可以赋值给int型 long int型 变量么?
int 类型32位整形数字
long 类型64位长整型数字
只要int类型的变量能接受的数字,long都可以接受
如何将一个int型变量的值赋给char*变量
当你定义的a的值不大于于127是楼上的方法是可以的,但超过127就会出错。因为用整数来定义字符型变量,表示的是ASCII码中该整数对应的字符,二ASCII码只有127个 ,所以当定义的整数超过127时,此定义就没有意义,以下操作都会出错!
设x为float型变量,y为int型变量,则y=(int)x;是正确的赋值语句
对
int型的变量的字节数是固定的吗?与int型变量的赋值无关吗?(32位系统)
系统分配给int型变量的内存空间大小跟系统有关系,过去有的是2个字节,现在大多都是4个字节。
需要指出的是,int型变量所分配的字节数,只跟系统有关,而跟赋值的大小、甚至赋没赋值都没有任何关系。
int**是什么类型,int*是指针类型,指向“&变量”,那么int**是什么类型呢,指向“&指针变量”吗?
int*是指向整型的指针类型,int**就是指向整型指针的指针类型,int*类型的变量可以被赋值为变量的地址也即&变量,那么in**类型的变量就可以被赋值为整型指针变量的地址,即&整型指针变量。
所以你的理解基本上是正确的。
c语言能将字符(char)直接赋值给整型变量吗
可以,整型变量得到的值是字符型变量在ASCII表中的十进制值
C语言中k为int型变量,(++k)+(++k)+(++k)的值为?
int k = 11; k = 11 k++; k = 12 int i = k++; i = 12 k = 13 i = ++k; i = 14 k = 14 ++ 在变量前,则先自增,再运算; ++ 在变量后,则先运算,再自增。