user-0 提问: 请教c语言是怎么表示NULL的？

回复:
user: user-0
content: C里面 char有NULL?

user: user-0
content: 引用 27 楼 u014444402 的回复:要插到数据库，得先格式化好不好？ 谢谢，怎么格式化？

user: user-1
content: 要插到数据库，得先格式化好不好？

user: user-0
content: 引用 25 楼 libaoyuan1114 的回复:首先，你定义的结构体对应的字段类型是float/double类型，那么你在c语言中见过这种类型有你所谓的NULL吗，答案是没有，他都是转换成0。所以如果你要非要数据库中完全搬移过去，那我个人认为你最好转换成字符型。希望对你有帮助 谢谢，那C的字符char[10]就有NULL了、CHAR[10]什么情况算NULL呢？

user: user-0
content: 引用 22 楼 q3733353520 的回复:[quote=引用 21 楼 startstop2015 的回复:] [quote=引用 19 楼 q3733353520 的回复:] [quote=引用 17 楼 startstop2015 的回复:] #define NULL 0能说明什么问题码？能解决我的问题码？ NULL无非一个标识符宏，其值=0而已，能解决我的问题码？ 谢谢  你可以去数据库版块问怎么插入null[/quote] SQL 怎么做我知道，这个是PRO*C，涉及到C的结构体，并非纯粹的数据库操作[/quote]    引用 21 楼 startstop2015 的回复:[quote=引用 19 楼 q3733353520 的回复:] [quote=引用 17 楼 startstop2015 的回复:] #define NULL 0能说明什么问题码？能解决我的问题码？ NULL无非一个标识符宏，其值=0而已，能解决我的问题码？ 谢谢  你可以去数据库版块问怎么插入null[/quote] SQL 怎么做我知道，这个是PRO*C，涉及到C的结构体，并非纯粹的数据库操作[/quote]   http://blog.csdn.net/wp_gis/article/details/5452454[/quote] 谢谢，谢谢，我现在的疑问不是使用指示变量 而是C怎么区分0和NULL?

user: user-2
content: 引用 21 楼 startstop2015 的回复:[quote=引用 19 楼 q3733353520 的回复:] [quote=引用 17 楼 startstop2015 的回复:] #define NULL 0能说明什么问题码？能解决我的问题码？ NULL无非一个标识符宏，其值=0而已，能解决我的问题码？ 谢谢  你可以去数据库版块问怎么插入null[/quote] SQL 怎么做我知道，这个是PRO*C，涉及到C的结构体，并非纯粹的数据库操作[/quote]    引用 21 楼 startstop2015 的回复:[quote=引用 19 楼 q3733353520 的回复:] [quote=引用 17 楼 startstop2015 的回复:] #define NULL 0能说明什么问题码？能解决我的问题码？ NULL无非一个标识符宏，其值=0而已，能解决我的问题码？ 谢谢  你可以去数据库版块问怎么插入null[/quote] SQL 怎么做我知道，这个是PRO*C，涉及到C的结构体，并非纯粹的数据库操作[/quote]   http://blog.csdn.net/wp_gis/article/details/5452454

user: user-0
content: 引用 19 楼 q3733353520 的回复:[quote=引用 17 楼 startstop2015 的回复:] #define NULL 0能说明什么问题码？能解决我的问题码？ NULL无非一个标识符宏，其值=0而已，能解决我的问题码？ 谢谢  你可以去数据库版块问怎么插入null[/quote] SQL 怎么做我知道，这个是PRO*C，涉及到C的结构体，并非纯粹的数据库操作

user: user-0
content: 引用 18 楼 zhangxiangDavaid 的回复:[quote=引用 17 楼 startstop2015 的回复:] #define NULL 0能说明什么问题码？能解决我的问题码？ NULL无非一个标识符宏，其值=0而已，能解决我的问题码？ 谢谢 你需要理解宏[/quote] 能否赐教一下?xiexie

user: user-2
content: 引用 17 楼 startstop2015 的回复:#define NULL 0能说明什么问题码？能解决我的问题码？ NULL无非一个标识符宏，其值=0而已，能解决我的问题码？ 谢谢  你可以去数据库版块问怎么插入null

user: user-3
content: 引用 17 楼 startstop2015 的回复:#define NULL 0能说明什么问题码？能解决我的问题码？ NULL无非一个标识符宏，其值=0而已，能解决我的问题码？ 谢谢 你需要理解宏

user: user-4
content: 首先，你定义的结构体对应的字段类型是float/double类型，那么你在c语言中见过这种类型有你所谓的NULL吗，答案是没有，他都是转换成0。所以如果你要非要数据库中完全搬移过去，那我个人认为你最好转换成字符型。希望对你有帮助

user: user-5
content: 引用 23 楼 startstop2015 的回复:[quote=引用 22 楼 q3733353520 的回复:] [quote=引用 21 楼 startstop2015 的回复:] [quote=引用 19 楼 q3733353520 的回复:] [quote=引用 17 楼 startstop2015 的回复:] #define NULL 0能说明什么问题码？能解决我的问题码？ NULL无非一个标识符宏，其值=0而已，能解决我的问题码？ 谢谢  你可以去数据库版块问怎么插入null[/quote] SQL 怎么做我知道，这个是PRO*C，涉及到C的结构体，并非纯粹的数据库操作[/quote]    引用 21 楼 startstop2015 的回复:[quote=引用 19 楼 q3733353520 的回复:] [quote=引用 17 楼 startstop2015 的回复:] #define NULL 0能说明什么问题码？能解决我的问题码？ NULL无非一个标识符宏，其值=0而已，能解决我的问题码？ 谢谢  你可以去数据库版块问怎么插入null[/quote] SQL 怎么做我知道，这个是PRO*C，涉及到C的结构体，并非纯粹的数据库操作[/quote]   http://blog.csdn.net/wp_gis/article/details/5452454[/quote] 谢谢，谢谢，我现在的疑问不是使用指示变量 而是C怎么区分0和NULL?[/quote](void *)0

user: user-0
content: #define NULL 0能说明什么问题码？能解决我的问题码？ NULL无非一个标识符宏，其值=0而已，能解决我的问题码？ 谢谢

user: user-0
content: 引用 15 楼 zxh707wk 的回复:#define NULL 0 谢谢，这个算什么意思呢？ 我的数据库里的NUMBER数值是NULL,保存到c语言的结构体的DOUBLE成员的时候，变成了0 然后这个结构体插入到数据库表，也是0，这个怎么解决啊？

user: user-6
content: #define NULL 0

user: user-0
content: 如果说NULL就是0 那么和真正的0怎么区分呢？

user: user-0
content: 引用 12 楼 zhao4zhong1 的回复:Code::Blocks也有类似VS IDE的功能。 谢谢，我不知道这事啥意思，我只想知道为什么数据库里的NULL保存到C语言的结构体里变成了0,然后再插入到表里就是0 我不知道怎么解决

user: user-7
content: Code::Blocks也有类似VS IDE的功能。

user: user-0
content: 引用 10 楼 user-8 的回复:NULL的ASCii码值不就是0莫。。。。。。 你意思是不是数据库中某字段为空，然后你用PROC把它选出来赋给C结构提成员，最终保存在成员中的值为0？  你在判断null的时候不使用=符号，因为null值比较特殊，需要使用 is null 表达式来判断。 把你存储过程中所有 =null 的内容 都改为 is null 。然后当该字段为NULL时，你给结构体成员特殊值（你想表达的空对应值）试试 首先表A NAME SALARY A    0 B    100 C    NULL    <-salry是NULL，不是'NULL'  SELECT NAME, SALARY INTO C结构体数组 FROM A 然后 INSERT INTO B表(NAME,SALARY) VALUES(:C结构体数组); 此时B表的SALARY是 0，不是 NULL，而且这里我不能这样 INSERT INTO B表(NAME,SALARY) VALUES(:C结构体数组->NAME,(:C结构体数组->SALARY,0,NULL)); 因为也有0值  B表的数据变成了这样 NAME SALARY A    0 B    100 C    0  和你说的IS NULL没有关系，这个我知道的

user: user-8
content: NULL的ASCii码值不就是0莫。。。。。。 你意思是不是数据库中某字段为空，然后你用PROC把它选出来赋给C结构提成员，最终保存在成员中的值为0？  你在判断null的时候不使用=符号，因为null值比较特殊，需要使用 is null 表达式来判断。 把你存储过程中所有 =null 的内容 都改为 is null 。然后当该字段为NULL时，你给结构体成员特殊值（你想表达的空对应值）试试