목록분류 전체보기 (408)
오답노트
int nLength, nLength2; wchar_t* bstrCode; char* pszUTFCode = NULL; nLength = MultiByteToWideChar(CP_ACP, 0, pszCode, lstrlen(pszCode), NULL, NULL); bstrCode = SysAllocStringLen(NULL, nLength); MultiByteToWideChar(CP_ACP, 0, pszCode, lstrlen(pszCode), bstrCode, nLength); nLength2 = WideCharToMultiByte(CP_UTF8, 0, bstrCode, -1, pszUTFCode, 0, NULL, NULL); pszUTFCode = new char[nLength2+1]; WideCha..
std::vector::iterator it; for (it = pDlg->m_Vector.begin(); it != pDlg->m_Vector.end(); it++) { myTAG_BASE tagBase = *it; //... } 정확히 개념적으로는 잘 모르겠지만 따로 컨테이너의 크기를 사용자가 for문으로 넣지 않고 반복자의 끝을 컨테이너의 마지막 포인터로 지정함으로써 컨테이너 관리만 잘해주면 사용자가 번거로울 일이 많이 줄어드는듯 하다. 주의할 점으로는 end()는 컨테이너의 마지막의 다음 요소이다. 2개의 데이터가 들어가 있으면 비어있는 3번째 컨테이너의 포인터를 가르킨다.
CMap mapHeader; CString str; mapHeader.SetAt(1, "TEST"); if (mapHeader.Lookup(1, str)) { //str = ... } mapHeader.RemoveAll(); 기본적인 사용법 CMap mapHeader; KEY : CMap 내부에서 key를 관리하는 데이터 타입 ARG_KEY: CMap에게 key를 전달하는 데이터 타입 VALUE: CMap 내부에서 값을 관리하는 데이터 타입 ARG_VALUE: CMap에게 값을 전달하는 데이터 타입 출처: https://yoonemong.tistory.com/139 [Sw.Dev] 순으로 Key, Value 순으로 SetAt 하여 Lookup 함수를 통해 Key 값으로 Value를 반환하는 구조
CString string = "abc" char* ch = (LPSTR)(LPCSTR)string; ch = string.GetBuffer(0); 구글 돌아다니기 힘들다
//행과 열을 입력 받고 각 행렬의 데이터를 입력 후 가로와 세로의 합을 구한다 int main() { int nRows, nCols; printf("행과 열의 개수를 각각 입력하세요: "); scanf("%d %d", &nRows, &nCols); int** nMat; int* nSumRow; int* nSumCol; nMat = (int**)malloc(sizeof(int*) * nRows); nSumRow = (int*)malloc(sizeof(int) * nRows); nSumCol = (int*)malloc(sizeof(int) * nCols); memset(nSumCol, 0x00, sizeof(int) * nCols); memset(nSumRow, 0x00, sizeof(int) * nCol..
//학생수 와 학생의 수강과목수 그리고 과목 당 점수에 대한 평균 예제 int main() { int nStudent, nMaj; printf("학생수를 입력하세요: "); scanf("%d", &nStudent); printf("-------------------------\n"); int** nScore; double* dbAvg; nScore = (int**)malloc(sizeof(int*) * nStudent); for (int i = 0; i < nStudent; i++) { printf("%d번째 학생의 수강과목 수 : ", i + 1); scanf("%d", &nMaj); nScore[i] = (int*)malloc(sizeof(int) * nMaj); dbAvg = (double*)mal..
int main() { int num,i=0,j,n; printf("숫자를 입력하세요 : "); scanf("%d", &num); int* nArr = (int*)malloc(sizeof(int) * num); /*while (i < num) // 아레토스테네스의 체를 사용하지 않는 로직 { nArr[i] = 1; if (((i + 1) % 2 == 0) && ((i+1) != 2)) nArr[i] = 0; else if (((i + 1) % 3 == 0) && ((i+1) != 3)) nArr[i] = 0; else if (((i + 1) % 5 == 0) && ((i+1) != 5)) nArr[i] = 0; else if (((i + 1) % 7 == 0) && ((i+1) != 7)) nArr[i]..
int main() { int* ptr = (int*)malloc(sizeof(int) * 10); int sum = 0; for (int i = 0; i < 10; i++) // for (int i = 0; i < sizeof(ptr)/sizeof(int); i++) // malloc 해준 포인터를 sizeof으로 확인하면 4로 출력.. { *(ptr + i) = i+1; sum += *(ptr + i); } printf("%d", sum); free(ptr); return 0; }
void main() { char szarr[1000]; scanf("%s", szarr); printf("%s", szarr); scanf_s("%s", szarr, sizeof(szarr)); printf("%s", szarr); return; }
int main() { int num = 10; int* ptr; ptr = # printf("%p\n", ptr); // 결과 주소값 printf("%p\n", &num); // 결과 주소값 printf("%d\n", num); // 결과 10 printf("%d", *ptr); // 결과 10 int arr[5] = { 1,2,3,4,5 }; ptr = arr; //배열과 같은 개념 for (int i = 0; i < (sizeof(arr) / sizeof(int)); i++) { printf("%d\n", arr[i]); printf("%d\n", *(arr + i)); printf("%d\n", ptr[i]); printf("%d\n", *(ptr + i)); } return 0; } 표현..