社区
C语言
帖子详情
在tc中这样可以么?
simclock
2003-08-20 09:13:19
定义一个字符串
char *str="";
...全文
182
18
打赏
收藏
在tc中这样可以么?
定义一个字符串 char *str="";
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jrhjrh
2003-08-22
打赏
举报
回复
编译时不出错
simclock
2003-08-22
打赏
举报
回复
to qhgary(Shining)
我那个BiTree 是指向BiNode的指针类型,然后我传过来的bst是bst的指针,所以我觉得应该是*bst阿
cxjddd
2003-08-22
打赏
举报
回复
其实char* str="string";是定义一个指针而不是定义一个字符串!
按照语法的来说,这个是定义了str。"string"只是早就在数据段里了,不是在这里定义的。只不过,str指向了"string"而已。
playboyxp
2003-08-22
打赏
举报
回复
可以这样写,编译可以通过
不过这样写好象没有意义
021850524
2003-08-21
打赏
举报
回复
to bm1408(嗔):
char *str;也是定义,也分配了内存呀.
只不过它的值可能是个随机的.
char *str="";是定义,它的值应该是指向静态存储区的.
不过最好应该在char *str;
前加上const,这样通用性好,否则有的编译器会报错.
simclock
2003-08-21
打赏
举报
回复
up
qhgary
2003-08-21
打赏
举报
回复
好的习惯就是
char* p = null;
用的时候再p = "...";
或者指向其他。
如果你碰到了Null pointer assignment,那只能说明你使用不小心,指针要分配了空间,才能用,出现这个错误是不应该的。不是char* p = null;的错。
你的下一个问题:
是不是应该这样
if (!(bst=(BiTree)malloc(sizeof(BiNode)))) return 0;
~~~等号右边是一个指针类型,所以左边应该也是一个指针类型,*bst表示这个指针的内容了
simclock
2003-08-21
打赏
举报
回复
up
simclock
2003-08-21
打赏
举报
回复
谁来回答一下儿我8楼的问题?谢谢
hillyee
2003-08-21
打赏
举报
回复
从语法上来说,这样写是没有错误的。
不过在实际编译的时候就要视编译器而定了,在tc中好象没有错误。
simclock
2003-08-21
打赏
举报
回复
up
simclock
2003-08-20
打赏
举报
回复
应该怎样写?请指点一下。我觉得我用指针的时候老是有不好的习惯。
比如定义一个指针int *a;我该不该给他赋值?如果直接用编译会有warning说没赋初值就直接用了。要是赋的话应该赋什么呢?赋NULL的话程序运行完会出Null pointer assignment。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
还有比如这个:
typedef struct BiNode {
char *keyword;
struct BiNode *lchild,*rchild;
}BiNode,*BiTree;
int CreatBST(BiTree *bst)
里有if (!((*bst)=(BiTree)malloc(sizeof(BiNode)))) return 0;
编译出warning说possibly incorrectly assignment in function CreatBST
bgu
2003-08-20
打赏
举报
回复
这样写程序是很不好一个现象!
GhostAdz
2003-08-20
打赏
举报
回复
这个是空串
地址肯定是分配的,通常应该放串的首地址
在这里只有\0,,只能放\0了
idontlikenickname
2003-08-20
打赏
举报
回复
语句char *str = "";属于定义字符串常量,虽然str没有有意义的内容但是编译器还是给str分配了1个字节的空间存放终止字符'\0'.
语句char *str;是定义一个字符指针,该指针变量的内容不定,但是str作为一个指针变量编译器是分配了内存给它的,要不怎么存储地址?
类似extern char *str;这样的语句才叫声明~~
bm1408
2003-08-20
打赏
举报
回复
这个问题我也很迷惑不解!
char *str;
这样属于声明!
char *str="";
这样属于定义!
按照道理,声明应该不分配内存,定义才分配内存!
simclock
2003-08-20
打赏
举报
回复
有人说这样没分配内存?
是不是说如果字符串特别长有可能会发生冲突?
oopig
2003-08-20
打赏
举报
回复
可以
计算机语言
中
tc
是什么,新人必须了解的几个
TC
常用语和脚本基础知识!
基础知识
TC
常用语一,函数在百度百科
中
是这样解释函数的:函数(function)表示每个输入值对应唯一输出值的一种对应关系。在计算机定义
中
函数过程
中
的这些语句用于完成某些有意义的工作——通常是处理文本,控制输入或...
TC
源码分析二,内核
中
流控代码的位置
tc
源码分析二,内核
中
流控代码的位置 使用的内核版本 Linux 4.3 问题探索 我们要研究源码除了好奇代码的书写方式之外最关心的还是代码的实际逻辑,这样就能便于我们理解内部究竟发生了什么。 在研究Linux内核
中
关于...
【C语言】
TC
2.0环境-带图形库
目录1. 下载2. 编译一个图形程序2.1. 解压2.2. 打开虚拟DOS2.3. 设置盘映射到DOSbox
中
2.4. 进入
TC
2.0安装目录2.5....下载后解压到D盘(随便哪个盘),我在解压包
中
写了一个有关图形的测试代码T1.C,如下
【Aurix系列学习】
TC
264D启动配置解释
SSW的概念 如图,AURIX芯片在芯片复位后最先...➢ SSW 在 CPU0 里面执行,所以 CPU0 在
TC
264 上电之后就会启动; ➢ SSW 集成在 BootROM 里面,不可以修改; ➢ SSW 的最后一条指令就会跳到客户编写的第一条指令...
TC
源码分析一,
tc
命令
TC
框架可以理解为一个控发不控收的框架,在 ingress 的位置只能做简单的控制,且不能有其他子项。如想对 ingress 进行控制请参考 IMQ 以及 ifb。 流控方式 SHAPING: 限流,平滑激增流量使得网络更加稳定。只适用...
C语言
69,369
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章