![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编程
文章平均质量分 65
NanYunQingNiao
非全职编程爱好者
展开
-
对于指向某一对象的指针用来引用该对象中的数据块内成员的思考
内容如题,解释一下数据块儿是自己构造的一个类的实例。最近看C++嘛 ,写了一个小程序,遇到如题的问题。经过不断地尝试和思考,发现了自己思维之简单,语言逻辑之严谨。把简化之后的例子贴在下面:#include <iostream>using namespace std;class STU{public: int num;};class Node{public: STU dat; Node(); ~Node();};int main(){ Node *原创 2022-01-24 16:58:05 · 180 阅读 · 0 评论 -
C++中前置声明(前向声明)用法的思考
前两天因为修改自己文章《个人对QT中的namespace Ui的理解》遇到前置声明的概念,很陌生就好奇的自己码了点代码,谁知编译报错,改来改去却百思不得其解。代码如下:#include <iostream>using namespace std;class SayHi;int main(){ SayHi * stu = new SayHi; cout<<"Hello!"<<endl; stu -> Say(); return 0;}cl原创 2021-12-01 00:59:36 · 1466 阅读 · 0 评论 -
C语言中 \0 代表什么?
C语言中 \0 代表什么呢?'\0' 是字符串的结束符,任何字符串之后都会自动加上'\0'。如果字符串末尾少了‘\0’转义字符,则其在输出时可能会出现乱码问题。‘\0’转义字符在ASCII表中并不表示阿拉伯数字0,阿拉伯数字0的ASCII码为48,‘\0’转义字符的ASCII码值为0,它表示的是ASCII控制字符中空字符的含义,代码为NUL,非NULL,两者差异请诸君自行百度。ASCII表如下.........原创 2019-06-24 20:41:26 · 84445 阅读 · 5 评论 -
对NULL、NUL、‘\0’和0的理解
NULL是一个宏,它在几个标准头文件中定义,0是一个整型常量,'\0'是一个字符常量,而NUL是一个字符常量的名字。这几个术语都不可互换。1、NULL用于表示什么也不指向,也就是空指针((void *)0)2、0可以被用于任何地方,它是表示各种类型零值的符号并且编译器会挑出它,在ASCII表中值为483、'\0'在ASCII表中被定义为空字符,被用于结束字符串,代码为NUL,在ASCI...原创 2019-06-24 22:16:10 · 2726 阅读 · 0 评论