1
#
include <stdio.h>

int main(void)
{
 printf("\nsigned  int  min: %d",1<<(sizeof(int)*8-1));
 printf("\nsigned  int  max: %d",~(1<<(sizeof(int)*8-1)));
 printf("\nunsigned int max: %u",~0);
 return 0;
}


2
크기가 m*n인 2차원 배열을 만들 때,

int** aArray=new int*[m];
for(int i=0;i<n;++i) aArray[i]=new int[n];

이렇게 하면 전체초기화를 위해 memset을 하려고 할때 곤란하다. 나중에 delete할때도 또 루프를 돌아야 해서 귀찮다. 하지만 아래 코드처럼 하는건 어떨까? 아! 래! 코! 드!


int** aArray=new int*[m];
aArray[0]=new int[m*n];
for(int i=1;i<m;++i) aArray[i]=aArray[i-1]+n;

이렇게 하면 전체 초기화할때도 memset(aArray[0],0,sizeof(int)*m*n) 하면 되고, 사용이 끝났을 때는 delete[] aArray[0]; delete[] aArray; 이렇게 하면 되니까 말이다.

뒷북이면 Zaphok




3
#define exch(x,y) {int tmp; tmp = x; x=y; t=tmp;}
main() exch(a,b); !!!!!!

'devel > man & example' 카테고리의 다른 글

scanf에서 fflush(stdin) 사용 안하고 \n 파싱해서 없애기  (2) 2011.11.27
function pointer  (0) 2009.11.24
sprintf int to ascii  (0) 2009.11.08
C++ , C File OUTPUT e.g.  (0) 2008.12.02
String Parsing  (0) 2008.05.25
Posted by 쵸코케키



해결

클래스안에서 ->data로 가면 멤버는 주소로  접근이 될까 아니면
직접 접근이 될까?

ex> tail->data!='s' 이런게 가능할까?

data를 리턴하고 싶으면


return tail->prev->data 로 될까 아니면 &로 객체를 넘겨줘야할까?  /////&안해도 됨
그리고 객체 자체가 리턴이 되는듯.

ex>>

class t
{
private:
 class nt
 {public:     char ch;      nt* next;
 };


char t::print()
{ return head->next->ch; }

void t::in(char a)
{head->next->ch=a;}


t test;    test.in(ta[0]);
char tmp=test.print();
cout <<tmp;



class에서 다른 클래스를 선언해서 사용해야만 할때

내가 찾아낸 방법;
private에서 pointer선언후
생성자에서 생성시켜서 주소를 먹고튄다

다른 방법
private에서 직접 생성을 시킨다 -_-;;;;;
exx>>

tree.h 
stack<child*> stkt;
stack<child*>* stktree;

tree.cpp
stktree=&stkt;

이거 그냥 포인터 안쓰고 바로 해도 될꺼같은데

'devel > etc' 카테고리의 다른 글

Makefile 쉬운 예제  (1) 2009.10.17
윤드림훃의 주옥같은 글  (0) 2009.10.17
Debug Mode - Enable  (0) 2009.01.02
simple fgets source code  (0) 2008.12.02
File To String in C++  (0) 2008.05.27
Posted by 쵸코케키

블로그 이미지
chocokeki
쵸코케키

공지사항

Yesterday
Today
Total

달력

 « |  » 2024.5
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

최근에 올라온 글

최근에 달린 댓글

글 보관함