c中的NULL 0 '\0'的一些问题

来源:互联网 发布:苹果cms采集 编辑:程序博客网 时间:2024/05/21 03:20

在c语言中字符串结尾为'\0',  这是字符格式,

char *p = '\0' ;   读出来(使用priintf输出)的就是空

也可以char *p = 0;  这个是直接等于ascii码格式,

char *p = 97,   printf("%c", *p)   就是a

区别char *p = ' 0 ';   -->等价于char *p = 48;

字符'0' 的ascii值就是48。

#include <stdio.h>#include <stdlib.h>#include <string.h>int main(int argc, const char *argv[]){    printf("%d\n", '\0');    printf("%d\n", NULL);    printf("%c\n", '0');    char p = 97;    printf("%c\n", p);//ascii转化成字符    return 0;}

NULL:

#if !defined(NULL)&&defined(__NEEDS_NULL)#ifdef __cplusplus#define NULL 0#else#define NULL ((void *)0)#endif#endif
在C和C++中的NULL是不同的

  


0 0
原创粉丝点击