C语言里:为什么不能将int型变量直接赋值给指向int型变量的指针

 我来答
天罗网17
2022-11-07 · TA获得超过6200个赞
知道小有建树答主
回答量:306
采纳率:100%
帮助的人:73.8万
展开全部

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 ++ 在变量前,则先自增,再运算; ++ 在变量后,则先运算,再自增。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式