cout是输出流的意思,p是一个对象的指针,data是p所指向的对象的一个成员变量,endl是endLine结束一行,也就是换行的意思。用C表达 就是 printf("%s\n",p->data);
endl;//回车换行,刷新流;流一般不会一有数字就会输出,要么满了,要么遇到endl,才会输出
<<"名称为:"是输出:名称为: <<bi->m_Name 是输出:bi指针指向的类或结构体的成员m_Name ;<<endl;输出换行 顺便解释一下,endl是一个特殊值,称为操纵符,将它写入输出流时,一是输出换行,二是刷新设备缓冲区。通过刷新缓冲区,用户可以立即看到写入到流中的输出内容。 程序员经常在调试过程...
前者输出的是p的内容,cout的重载函数确保输出的是字符串 后者输出的是*p,这是一个字符'1',
cout << "学号:" << s1.get_no() << endl; cout << "平均成绩:" << (s1.get_score_1() + s1.get_score_2()) / 2 << endl << endl; } int main() { int flag = 1; vector <student> stud; char name[20]; int no,score1,score2; ...
p->s是输出第一个结构体的s成员,即Mary cout << p->q->s << endl ; //q是p的第二个成员,在第一个结构体中他的值是 a+1,所以p->q也就是指向第二个结构体,输出结果为Jack cout << p->q->q->q->s << endl ; //同理,指向第三个结构体,输出Jim ...
其实p是指向字符串第一个字符'a'的地址,*p就是'a',cout就是将p指向的内存值打印出来,直到遇到'\0',因此将字符串打印了出来
看起来你给的head不对吧 显然你的p->next都为null导致后面终止了 而且这个p->data为 FFFFCDCD,是不是太巧了点
指针p指向字符串常量"hello word",即p中存放该字符串的首地址,c++为了兼容c语言,当输出常量字符串的首地址时实际输出该字符串。cout<<(int)p;则为p的内容,即字符串的地址,而cout<<&p;为指针变量的地址,而非上述字符串的地址。仅供参考。求采纳 ...
为第i个位置之后第一个比pi值更大的位置,如果不存在这样的位置,则qi= n +1。举例来说,如果n = 5且p为1 5 4 2 3,则q为2 6 6 5 6。 下列程序读入了排列p,使用双向链表求解了答案。试补全程序。(第二空2分,其余 3 分) 数据范围 1 ≤ n ≤ 105。