C++ 程序不显示输出
c++ program does not show output
代码打印
A
B B C C C
D D D E
E
#include<iostream>
using namespace std;
int main() {
int j = 70;
char ch = ' ';
int k = 65;
int n = j - k;
for(int i = 1; i <= n; i++) {
for(int m = 1; m <= i; m++) {
ch=(char)(k);
cout<<(k+" ");
}
cout<<endl;
k++;
}
return 0;
}
请确定我在Linux(Ubuntu(上运行的代码中的错误
+
是一个二进制加法运算符,所以当你这样做(k+" ")
时,你实际上是在循环中将65,66,67,68 and 69
添加到" "
(字符串文字(的指针地址。 这是未定义的行为。
因此替换您的
cout<<(k+" ");
跟
cout<<ch<<" ";
错误出在行cout<<(k+" ");
为了解释正在发生的事情,让我们考虑k = 2
和常量字符 []"bacd"
。 然后2 + "bacd"
与从"bacd"的第二个位置使用字符指针相同。 因此cout << k + "bacd";
将cd
打印为输出。
所以k+" "
等效于从 " 的第 k 个位置开始的字符指针
错误位于以下行中:
cout<<(k+" ");
相关文章:
- 了解 Linux 虚拟内存:valgrind 的 massif 输出显示了有和没有 --pages-as-heap 的主要差异
- 输出显示多个带整数的字符串值
- 如何使代码的输出显示为"工资减税"
- 如何让我的输出显示输入金额的星号
- 控制台输出显示ASCII值,而不是数字的预期数字
- 如何修复输出显示,以便显示正确排序的数据
- Android Studio 3.2:cmake message()输出显示在哪里
- 如何将OpenCV的输出显示或流式传输到HTML页面或其他一些客户端应用程序
- 我写了一个函数来删除循环链接列表中的第 1 个节点,但输出显示无限次"55 44 33 22 11 99",那么我该如何解决呢?
- 从c++程序运行shell脚本会自动将shell脚本的输出显示到控制台吗
- 为什么我的输出显示显示计算器中的每个选项
- C++将输出显示到php中
- 从 PHP 调用 C++ 应用程序 - 输出显示"Array"
- 有没有办法C++让循环的输出显示在同一行上
- 为什么日志输出显示在控制台主机中,而不显示在ISE中?(v4.0)
- 如何让GDB为每一行输出显示时间戳
- 为什么输出显示为无符号数
- 如何获得gdb tui汇编输出显示指令
- 为什么输出显示错误
- FFTW输入输出显示DSP