24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 1230  |  回复: 17

FWei灵

铜虫 (小有名气)

[求助] 结构体

#include
typedef
struct{
char * bookName,*publisher;
float price;
}BOOK;
int main()
{
BOOK cBook,mathBook;
BOOK *p;
p=&cBook;
p->bookName="c语言程序设计";     
p->publisher"清华大学出版社";
p->price=26.9f;
printf("%s(%s)%0.2f\n",p->bookName,p->publisher,p->price);
p=&mathBook;
p->bookName="高等数学";
p->publisher"高等教育出版社";
p->price=32.5f;
printf("%s(%s)%0.2f\n",p->bookName,p->publisher,p->price);
return 0;

}
这个程序中, p->price=26.9f;和 p->price=32.5f;中的f是怎么回事???


请各位大师解释一下!!

                                                                             谢咯!!
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

sudo

木虫 (正式写手)

引用回帖:
12楼: Originally posted by shouhangwn at 2012-02-21 12:57:16:
指针的值可以改变,可是初始化也得申请空间吧?是不是

不知道你所说的初始化是指谁的初始化?

只读段本来就是在程序中占有空间的,只不过那个段“只读”罢了~

PS:如果你用的是gcc编译的话(没试过cl+link不知道VC的编译器是否有类似的功能),还可以用编译脚本强行把只读段弄成非只读属性=.=稍微扯远了

再PS,一个好玩的例子:
CODE:
#include
#include

int main(){
        const char *p = "abc";
        const char *q = "abc";

        printf("p=%p, q=%p\n", p, q);

        return 0;
}

可能有助于说明只读段的一些问题
14楼2012-02-21 23:34:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

文俊点点

木虫 (著名写手)

【答案】应助回帖


感谢参与,应助指数 +1
余泽成(金币+1): 谢谢参与应助! 2011-12-29 21:21:10
f表示是浮点数,是浮点数的控制符。lf是double的控制符。
这是你所拥有的时间·····这是你所能改变的生活·········
2楼2011-12-29 08:48:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijie169

铜虫 (著名写手)

【答案】应助回帖


感谢参与,应助指数 +1
余泽成(金币+1): 谢谢参与应助! 2011-12-29 21:21:27
ls正解,不用f的话,那个小数就表示为double型的
3楼2011-12-29 09:07:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

微尘、梦想

木虫 (知名作家)

【答案】应助回帖

★ ★ ★
感谢参与,应助指数 +1
余泽成(金币+2): 辛苦了! 2011-12-29 21:22:07
FWei灵(金币+1): 2012-03-04 00:29:40
就是画蛇添足而已,可能是从别的语言里面带过来的毛病,因为有些语言是需要这样写的;又或者是书太老啦,可能是当时C语言还没有标准化,为了可以在不同的编译器中正确运行,才加上的;又或者写书的人还没有跟上时代的变化,使用的是旧习惯,解释有许多种,一句话就是,现在不需要~
任风云变幻,我笑对人生!
4楼2011-12-29 10:19:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

FWei灵

铜虫 (小有名气)

引用回帖:
2楼: Originally posted by 文俊点点 at 2011-12-29 08:48:23:
f表示是浮点数,是浮点数的控制符。lf是double的控制符。

那没有f行不???
5楼2011-12-29 12:27:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

FWei灵

铜虫 (小有名气)

引用回帖:
3楼: Originally posted by lijie169 at 2011-12-29 09:07:16:
ls正解,不用f的话,那个小数就表示为double型的

不用f型不??有什么影响?
6楼2011-12-29 12:27:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

allen5257

新虫 (初入文坛)

ls正解,
7楼2012-01-04 13:35:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yalefield

金虫 (文坛精英)

老汉一枚

【答案】应助回帖


感谢参与,应助指数 +1
jjdg(金币+1): 感谢发表意见 2012-01-05 03:10:10
那个f无所谓。

不过,下面的bookName和publisher可都没分配空间!这是要死人的。
你们信不信,我不知道。反正,我是信了。
CODE:
p=&cBook;
p->bookName="c语言程序设计";     
p->publisher"清华大学出版社";

(其中,p->publisher"清华大学出版社"还少了个等号)
8楼2012-01-04 15:57:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sudo

木虫 (正式写手)


jjdg(金币+1): 感谢发表意见 2012-01-05 03:10:04
引用回帖:
8楼: Originally posted by yalefield at 2012-01-04 15:57:58:
那个f无所谓。

不过,下面的bookName和publisher可都没分配空间!这是要死人的。
你们信不信,我不知道。反正,我是信了。
[code]p=&cBook;
p->bookName="c语言程序设计";     
p->pu ...

只要不进行“写操作”就是安全而且合乎标准的,字符串常量放在程序的只读数据段中

当然了,更严谨的写法是
const char *bookName, *publisher;

这样说明了,指针本身的值可以改,但是指向的数据不可以改~
9楼2012-01-04 17:16:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yalefield

金虫 (文坛精英)

老汉一枚


jjdg(金币+1): 感谢参与 2012-01-06 01:35:21
引用回帖:
9楼: Originally posted by sudo at 2012-01-04 17:16:37:
只要不进行“写操作”就是安全而且合乎标准的,字符串常量放在程序的只读数据段中

当然了,更严谨的写法是
const char *bookName, *publisher;

这样说明了,指针本身的值可以改,但是指向的数据不可以改~

这就是把一只打开保险的枪,交给不具备金正恩这样领袖气质的三岁孩子,告诉他,只要不扣扳机,就没事;扣扳机的时候,不要对着人,也不要对着自己。
10楼2012-01-05 08:24:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 FWei灵 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 324求调剂 +8 想上学求调 2026-04-02 8/400 2026-04-02 18:38 by 学员Fhmn4N
[考研] 22408 266求调剂 +3 masss11222 2026-04-02 3/150 2026-04-02 18:11 by 笔落锦州
[考研] 一志愿山东大学,085600,344 +3 魏子per 2026-04-02 4/200 2026-04-02 16:21 by Creta
[考研] 298求调剂 +3 zzz,,r 2026-04-02 6/300 2026-04-02 14:34 by zzz,,r
[考研] 327求调剂 +9 汲亦昊 2026-03-29 9/450 2026-04-02 11:44 by 运气yunqi
[考研] 生医工0831调剂求推荐 +5 小熊睿睿_s 2026-03-27 7/350 2026-04-02 11:30 by 纺大杨老师
[考研] 329求调剂 +8 miaodesi 2026-04-02 10/500 2026-04-02 10:24 by 不吃魚的貓
[考研] 材料调剂 +11 一样YWY 2026-03-31 11/550 2026-04-01 22:25 by zhouyuwinner
[考研] 求调剂 +4 图鉴212 2026-03-30 5/250 2026-04-01 15:32 by 图鉴212
[考研] 材料与化工调剂一志愿大连海事085600,349 +9 吃的不少 2026-03-30 9/450 2026-04-01 11:24 by wangjy2002
[考研] 322求调剂 +8 三水sss 2026-04-01 8/400 2026-04-01 10:19 by 唐沐儿
[考研] 070300化学专业279调剂 +10 哈哈哈^_^ 2026-03-31 10/500 2026-03-31 23:13 by liu823948201
[考研] 张芳铭-中国农业大学-环境工程专硕-298 +9 手机用户 2026-03-26 9/450 2026-03-31 18:09 by 544594351
[考研] 085602化工求调剂(331分) +8 111@127 2026-03-30 8/400 2026-03-30 21:23 by 研究僧导导
[考研] 0703 化学 求调剂,一志愿山东大学 342 分 +7 Shern—- 2026-03-28 7/350 2026-03-30 16:31 by nothing投稿中
[硕博家园] 招收生物学/细胞生物学调剂 +4 IceGuo 2026-03-26 5/250 2026-03-29 01:25 by griffith2014
[考研] 复试调剂 +3 raojunqi0129 2026-03-28 3/150 2026-03-28 15:27 by 落睿可思
[考研] 085405 考的11408求各位老师带走 +3 Qiu学ing 2026-03-28 3/150 2026-03-28 09:19 by 乐呵呵的追梦人
[考研] 331环境科学与工程求调剂 +3 熠然好运气 2026-03-27 3/150 2026-03-28 04:11 by fmesaito
[考研] 330一志愿中国海洋大学 化学工程 085602 有读博意愿 求调剂 +3 wywy.. 2026-03-27 4/200 2026-03-28 03:32 by fmesaito
信息提示
请填处理意见