대충 근접하긴했는데 안되잖아 그렇게 집어넣은 포인터변수의 메모리주소값을 출력하니까 일치안함
ㅁㄴㅇㄹ(220.81)2015-02-03 17:36
C++에서 char c[] = Hello 넣었을 때 Hello를 전부다 출력하는건 어떻게하냐. 걍 c출력시키면 H만나옴. 반복문으로 할순있겠지만 해당 변수 c배열안에 몇개의 데이터가 들었는진 어떻게알아 알게뭐야 밖에서 봤을 때. 그런경우는 일일이 출력메소드를 또 만들어야되냐?
ㅁㄴㅇㄹ(220.81)2015-02-03 17:55
멍청멍청멍청멍청~ 그러라고 있는게 캐스팅
☎2.60™(roidz)2015-02-03 17:58
그리고 애초에 배열은 무조건 배열 시작점의 주소값만 넘기면 문자열일 경우 실제 내부에서는 /0 만날때까지 반복문이 돈다.
☎2.60™(roidz)2015-02-03 17:59
ㅎㅎㅎ 만들었당게 #include "stdio.h"void print(char a[]){ int c = 0; while (true) { if (a[c] != '\0') { printf("%c", a[c]); c++; } else { printf("\n"); break; } }}void foo(char cc[]){ int i; printf("%p\n", cc); printf("Type the address you would like to read : "); scanf_s("%x", &i); //printf("Character value at your address: %c\n", *((char *)(i))); printf("Charact
ㅁㄴㅇㄹ(220.81)2015-02-03 18:08
er value at your address : "); print(cc);}int _tmain(int argc, _TCHAR* argv[]){ char c[] = "Hello"; foo(c); //printf("%c\n", c); //print(c); return 0;}
*
ㄴ 그걸 누가 몰라서 그러나. 변수명을 바탕으로 값을 뽑는게아니라 스트링형식으로 예를들어 00EAF34D 이런걸로 해당 값을 어떻게 뽑느냐 이말
*
음... 자료형까지 안다는의미임?
char *pC = nullptr; pC = ( 알고있는 주소값 ); 이러면 될듯
ㄴ 오호 통재라. 通하였느냐
http://stackoverflow.com/questions/10333463/why-cant-we-use-direct-addressing-in-c-or-c-code
멍청멍청멍청멍청~ *(주소번지)도 OS따라서 될수도 있고 안될수도 있다.
대충 근접하긴했는데 안되잖아 그렇게 집어넣은 포인터변수의 메모리주소값을 출력하니까 일치안함
C++에서 char c[] = Hello 넣었을 때 Hello를 전부다 출력하는건 어떻게하냐. 걍 c출력시키면 H만나옴. 반복문으로 할순있겠지만 해당 변수 c배열안에 몇개의 데이터가 들었는진 어떻게알아 알게뭐야 밖에서 봤을 때. 그런경우는 일일이 출력메소드를 또 만들어야되냐?
멍청멍청멍청멍청~ 그러라고 있는게 캐스팅
그리고 애초에 배열은 무조건 배열 시작점의 주소값만 넘기면 문자열일 경우 실제 내부에서는 /0 만날때까지 반복문이 돈다.
ㅎㅎㅎ 만들었당게 #include "stdio.h"void print(char a[]){ int c = 0; while (true) { if (a[c] != '\0') { printf("%c", a[c]); c++; } else { printf("\n"); break; } }}void foo(char cc[]){ int i; printf("%p\n", cc); printf("Type the address you would like to read : "); scanf_s("%x", &i); //printf("Character value at your address: %c\n", *((char *)(i))); printf("Charact
er value at your address : "); print(cc);}int _tmain(int argc, _TCHAR* argv[]){ char c[] = "Hello"; foo(c); //printf("%c\n", c); //print(c); return 0;}
그리고 배열시작점의 주소값을 넘길때 니말마따나 문자열일경우 /0만날때까지 반복문 도는건 알겠는데 printf해서 배열을 출력시키라고하면 시작점에 있는 문자만 출력하더라 이말이다 일일이 로직을 짜서 수동으로 해야되네
포인터에 주소값 대입하면 되는거 아니냐?
printf에 %s를 안하고 %c를 했을 가능성 다분해보인다
ㄴ 내생각도 그러하다;
캬~전화기 하드캐리
%s로 하면 프로텍트에 걸려서 출력이 안된단당...얘들아