다음은 내가 원하는 것입니다.
사용자로부터 문자 (문자열 입력) 값을 저장하기 위해 크기가 15 인 문자 배열을 선언하십시오. 이제 다음 작업을 수행하십시오.char 형식 배열을 함수에 전달하고 첫 번째 char 배열을 두 번째 차트 배열에 복사하고 C++을 사용하여 비교하는 방법?
- 함수 copy()에 배열을 전달하십시오.
- 위 함수에서 같은 크기의 다른 배열을 정의하십시오. 첫 번째 배열의 값을 두 번째 배열에 복사하고 콘솔에 표시하십시오.
- From 함수 Copy()는 두 배열을 모두 compare() 함수에 전달합니다. 이 함수에서 두 배열을 비교하고 조건이 충족되면 "Equal"메시지를 표시합니다. 여기
내 코드
#include "stdafx.h"
#include <iostream>
using namespace std;
#include <iomanip>
using std::setw;
void mycopy(char array);
int main(){
//Using Loop to input an Array from user
char array[15];
int i;
cout << "Please Enter your 15 characters" << endl;
cout << "**************************************************" << endl;
for (i = 0; i < 15; i++)
{
cin >> array[i];
}
// output each array element's value
cout << "Please Enter your 15 characters" << endl;
cout << "**************************************************" << endl;
cout << "Element" << setw(13) << "Value" << endl;
for (int j = 0; j < 15; j++) {
cout << setw(7) << j << setw(13) << array[j] << endl;
}
mycopy(array[15]);
return 0;
}
void mycopy(char array[15]) {
char array1[15];
strncpy_s(array1, array, 15);
cout << "The output of the copied Array" << endl;
cout << "**************************************************" << endl;
cout << "Element" << setw(13) << "Value" << endl;
for (int j = 0; j < 15; j++) {
cout << setw(7) << j << setw(13) << array1[j] << endl;
}
}
상기 코드를 복사 (기능하는 배열을 통과) 및 제 2 문자 배열로 1 배열의 값을 복사 할 수있다 그러나 유효하지 않은 매개 변수가 전달되어 코드가 예외를 생성합니다. 스택 오버플로를 검색했지만 내 문제를 해결할 수있는 비슷한 질문을 찾지 못했습니다. 미리 감사드립니다.
'main()'위에있는'mycopy()'의 프로토 타입 뒤에 세미콜론을 넣는 것을 잊어 버렸습니다. – Mark
'*'을 잊어 버린 프로토 타입의'void mycopy (char * array)' – Tyger
@Mark 감사하지만 이제 다른 오류가 발생합니다 –