首页 > 常见问答

指针数组如何赋值 c语言字符串指针为什么不能用scanf赋值?

c语言字符串指针为什么不能用scanf赋值?

c语言是一种比较低级的语言,没有字符串的概念,只有字符数组,不能自动分配空间,要存储数据,必须事先定义存储空间的大小

!更改为:charname[100]必须是常量

scanf(%d%s”,&a[i]。努,a[i]。(姓名)没问题

!估计您已经看到了这个定义:char*name=“abcd”,这也是字符数组初始化的固定空间。所以您应该记住,初始化时必须保留存储空间的大小

指针数组如何赋值 c语言字符串指针为什么不能用scanf赋值?

!另外,如果想达到高级语言的效果,还可以使用

a[i]。name=(char*)malloc(100)/*这里还需要常量*/

scanf(%d%s”,&a[i]。努,a[i]。(姓名)没问题

c语言中定义指针变量时,赋值和赋初值有什么区别?

设置初始值,即初始化,只能在定义时进行操作,形式为

typevaruname=inituvalue[value

其中=inituvalue是初始值。

赋值是在变量定义后改变变量的值,形式为

var琰[name=value

两者的效果相似,即改变变量的值。但是在c语言中,编译的代码是不同的。设定初始值的效率更高。

c语言指针未初始化能给另一个指针赋值么?

我试过哈,第一次可以编译通过,但是不能运行,错误!第二种是正确的格式,指针必须指向一个空格,或者null;我认为是,专家建议,哈哈

~]*p=&意思是把a的地址赋给*p的值。这里解释了p是指针的指针,*用来取值,然后取*p后面的地址;例如:int**p=null

p=&a;表示a的地址分配给值p,其中p是指针。例如:int*p=null;

c语言指针初始化这两种方式的区别?

函数指针和指针函数之间的差异:

1。名称解析。这两个名词都是修饰名词,可以在中间加上一个助词“de”,稍加扩展。现在,函数的指针和指针的函数更加清晰了。现在,我们可以通过添加一些修饰符来再次展开—指向函数的指针和返回值为指针的函数基本上都很清楚。

2.格式。

type(*pfurc)(typepara)--函数指针

type*func(typepara)--指针函数

3。首先,指针函数是一个普通函数,但返回值是指针(实际上是地址)。许多人认为它是神秘的,因为他们害怕指针

!4.函数指针。这有点复杂。首先,*与具有最高优先级的pfunc组合,因此pfunc是指针。同时,指针后面有一对圆括号,里面有参数,与函数参数的格式相同。因此,指针就是函数指针,指针前面有一个类型返回值类型!有些人觉得这里很奇怪。指针怎么会有返回值?

5.指针有一个返回值,因为当指针被使用时,它将指向一个与它自己的格式相似的函数。因此,指针的返回值和参数格式决定了它指向的函数的格式

!6.如果你想精通函数指针,为什么不呢?你必须精通它,因为当你使用函数指针时,它反映了c语言的绑定特性,也是c语言多态性的雏形!

指针数组如何赋值c语言字符指针赋值c语言指针赋值语句规则

原文标题:指针数组如何赋值 c语言字符串指针为什么不能用scanf赋值?,如若转载,请注明出处:https://www.saibowen.com/wenda/20169.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「赛伯温」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。