标题:指针的一个错误,不懂
只看楼主
NIALK
Rank: 1
等 级:新手上路
帖 子:15
专家分:6
注 册:2019-2-3
结帖率:0
 问题点数:0 回复次数:5 
指针的一个错误,不懂
#include <stdio.h>
int main()
{char *p;
p={"fgjdfkv"};
}


error C2059: syntax error : '{'
什么意思?
搜索更多相关主题的帖子: 指针 错误 char C2059 syntax 
2019-02-25 21:50
豆豆的滴
Rank: 9Rank: 9Rank: 9
来 自:湖南
等 级:贵宾
威 望:33
帖 子:368
专家分:1087
注 册:2018-5-7
得分:0 
不是有错误提示么
2019-02-25 23:02
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
char *p = {"fgjdfkv"};
2019-02-26 04:49
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
这种情况下 只能向3楼一样 在初始化时赋值  其他时候赋值 在c语言里是不被支持的

DO IT YOURSELF !
2019-02-26 08:46
派大星有话说
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-10-5
得分:0 
指针直接指向字符串,不用加{}
2019-02-26 23:03
waterstar
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:5
帖 子:984
专家分:2810
注 册:2010-2-12
得分:0 
指针变量也是一种变量的类型。

char *p;在编译器的眼里只是分配了一个p指针变量类型的内存。
p={"fgjdfkv"};这行代码自然会让编译器手足无措。

而char *p = {"fgjdfkv"};就让编译器知道了需要分配这么多字符的内存,同时也把p变量的内存分配了,还把p的初始化工作完成了。

冰冻三尺,非一日之寒;士别三日,不足刮目相看!
2019-02-28 15:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-493230-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.555444 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved