gpt4 book ai didi

c++ - 为什么这段代码不影响输出?

转载 作者:行者123 更新时间:2023-11-28 02:26:10 25 4
gpt4 key购买 nike

这应该接受输入并将每个字母 1 向右移动。暂停是否阻止它做任何事情?

我怎样才能改变它,让它不只是输出用户输入的内容?

这是 Visual Studio Community 2013 中的 C++ 代码:

#include "stdafx.h"
#include <iostream>
using namespace std;
#include <string>
#include <cctype>


int _tmain(int argc, _TCHAR* argv[])
{
string cyphertext;
cout << "Paste your cyphertext and press enter to shift right 1: ";
cin >> cyphertext;

void encrypt(char * cyphertext, unsigned int offset);

for (int i = 0; cyphertext[i] != 0; i++) {
char firstLetter = islower(cyphertext[i]) ? 'a' : 'A';
unsigned int alphaOffset = cyphertext[i] - firstLetter;
int offset = 0;
unsigned int newAlphaOffset = alphaOffset + offset;
cyphertext[i] = firstLetter + newAlphaOffset % 26;

cout << "" << "Right One: " << cyphertext;

system("pause");
return 0;
}
}

最佳答案

您的暂停 在“加密”循环内。它需要在外面。循环中的return会终止程序;这也需要在循环之外。

请注意,当代码以正统布局(例如问题中现在的布局)缩进时,更容易看到此类错误。使用杂乱无章的布局真的很难发现很多问题,这些问题在代码布局整齐时很明显。

您还声明了一个您从未使用过的函数encrypt();不要那样做。在其他函数中声明函数通常不是一个好主意。鉴于没有定义 encrypt() 函数,所以没有“无效函数”,所以我已经为您更改了问题标题。

关于c++ - 为什么这段代码不影响输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30588653/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com