게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
[본삭금]C++ 질문드립니다.
게시물ID : programmer_8816짧은주소 복사하기
작성자 : Exa
추천 : 0
조회수 : 385회
댓글수 : 21개
등록시간 : 2015/03/22 19:14:09
옵션
  • 본인삭제금지
문자열 일부분을 원하는 문자로 치환하는 프로그램인데

에러창이 떠대서 질문드립니다.

아래가 실행결과고 저런 에러창이 문자열 변수마다 한번씩뜹니다.

_s가 붙는 문자열 처리 함수들에서 발생하는거같은데 처리할 방법을 모르겠습니다.

또, 19,20번째줄 처리결과도 문제인데 실행창에서 3번째줄부분인데 after 문자열만 붙이면 나오질 않습니다... tmp변수로 바꿔보면 또 잘나옵니다...;

그리고 실행결과 마지막줄에 문자 하나가 ?가 되버리는데 한번만 봐주시면 감사하겠습니다.!
1.png

 1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
#include <iostream>#include <cstring>using namespace std; int main() { 	char string[100] = { "abcdefghi" }, before[100] = { "cd" }, after[100] = { "q" }, tmp[100] = { "" }, *beforepoint; 	int beforelen=0,afterlen=0; 	 	beforelen = strlen(before); 	afterlen = strlen(after);  	beforepoint = strstr(string, before);  	strcat_s(tmp,200, beforepoint+beforelen);  	cout << string << endl; 	cout << tmp << endl; 	strcpy_s(beforepoint, 200, after); 	cout << string << endl; 	strcpy_s(beforepoint+afterlen, 200, tmp); 	cout << string << endl; }
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호