C++ 질문입니다. 정말 기초적인 질문입니다.
조회수 831회
질문은 두가지입니다. 독학으로 책보고 공부하는데 부가 설명이 없어서 힘드네요.
첫번째 질문은, "" 과 ''의 차이점을 알고싶습니다. char 타입을 사용할때나 변수에 대입을 할때는 ''를 쓰던데 ""를 쓰면 오류가 나고,, 대체 무슨 차이인지 알고싶습니다.
두번째 질문은 구조체인데요.
문제는 한구조체의 멤버들을 다른 구조체에 대입하는 것입니다.
struct Student
{
char bloodType;
int stdNumber;
float grade;
};
int main()
{
Student s1, s2;
s1.bloodType = 'O';
s1.stdNumber = 337;
s1.grade = 3.3f;
[
s2.bloodType = s1.bloodType;
s2.stdNumber = s1.stdNumber;
s2.grade = s1.grade;
];
return 0; }
답지는 이렇게 나와있는데요, 저는 대입하는 부분을 일일히 하지않고 s1=s2; 이렇게 끝냈는데 메시지창 뜨면서 오류가 나더라구요. 분명 앞장에서는
int main() { struct Point { int x; int y; };
Point pt1={30,50}; Point pt2;
pt2=pt1;
이렇게 대입을 해서 답지와 같은 값이 나왔는데 왜 저 위의 문제에는 적용이 안되는지 알고싶습니다. 답변해주시면 정말 감사하겠습니다.
-
(•́ ✖ •̀)
알 수 없는 사용자
1 답변
-
#include <iostream> using namespace std; struct Student { char bloodType; int stdNumber; float grade; }; int main() { Student s1, s2; s1.bloodType = 'O'; s1.stdNumber = 337; s1.grade = 3.3f; cout << "s1의 정보" << endl; cout << s1.bloodType << endl; cout << s1.stdNumber << endl; cout << s1.grade << endl; s2 = s1; cout << "s2의 정보" << endl; cout << s2.bloodType << endl; cout << s2.stdNumber << endl; cout << s2.grade << endl; return 0; }
같은 구조체끼리는 대입연산자 사용 가능합니다.
' '는 문자를 표현할 때 사용합니다. 예를들어.. 'a'라는 문자, '1'이라는 문자, '#'이라는 문자.. 이런식으로요.
반면 " "는 문자열을 표현할 때 사용합니다. 예를들어 "Hello"라는 문자열, "World"라는 문자열, "a"라는 문자열 등이 존재합니다.
따라서 'a'와 "a"는 다른 것입니다.
※참고
-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력