LastUpdate: 2009/01/19 00:23:06
�߂�
���悭�o���킷�R���p�C��/�����N�G���[
���悭�o���킷���s���G���[
�@
001 char80�o�C�g�z��ւ̃|�C���^�̐錾���@
002 �R�}���h���C���ł̈����̎擾���@
003 (C++) �������z���̎g����
004 (C++) �|�C���^�n���ƎQ�Ɠn��
005 �ϐ���`���̏������o���G�[�V����
006 printf�̂悭����g����
007 cout�̂悭����g����
008 CArray�̂悭����g����
009 try�Acatch�ɂ���
010 �p���ɂ��X�R�[�v�̕ω��ɂ���
011 �\���̂̌^�錾�ɂ���
012 DECLARE_SERIAL IMPLEMENT_SERIAL Serialize ���ĉ��H
013 #ifdef�̏����̏����̏����̊�{
014 �uisual C++ �̃v���W�F�N�g�̐V�K�쐬���j���[�̐���
015 BSTR�^�̊��̖߂�l��VC++���Ŏ擾������@
016 �g���[�X�̖ړI�ŏo�͂������e���A�t�@�C���ɏ����o�����@
017 VisualC++�̃v���W�F�N�g�t�@�C���́H
018 Link�ŃG���[
019 fatal error C1010: ��غ��ٍ߲ς�ͯ�ް�̌������ɗ\�����Ȃ� EOF �����o���܂���
020 �Q�d�C���N���[�h�h�~
021 new delete �̎g����
022 StdAfx.h��StdAfx.cpp���ĉ��H
023 [MFC]�A�v���P�[�V�����ň����͎擾�ł���́H
024 [MFC]�A�v���P�[�V�����N���X�̃I�u�W�F�N�g�ɃA�N�Z�X����ɂ́H
025 �N���X��static�ȃ����o�ϐ���lj������烊���N�G���[�ɂȂ邪
026 �\�[�g�̘b��
027 Win32API���g���Ƃ���include
028 �œK���̃L�[���[�h
029 ���X�g�{�b�N�X�̃A�C�e���lj��̕��@�i�l�e�b�̗��K�����˂āj
030 ��ʂ��Ăǂ�����Ă���낤�H
031 �v���Z�X�̎�@
032 �ÓI�����o���̗��p�@
033 CTime��CTimeSpan�͂ǂ��Ⴄ�́H
034 ���̖߂�l���āA�ǂ��������J�j�Y���H
035 �悭�g���^�̕\���͈�
036 ���\�[�X�t�@�C���𑼂̃v���W�F�N�g����R�s�[������@
037 IDD���������ăR���p�C���G���[
038 IDE�ɃN���X�̂ЂȌ`����点����@
039 VB������g����DLL�̍���
040 �X�^�[�g���j���[����MSDN�̃V���[�g�J�b�g���쐬������@
041 �C���X�^���X�����Ȃ����̏W�܂�̃N���X���쐬����ɂ�
042 �悭�o���킷�A�R���p�C���^�����N�G���[
043 �G�f�B�^�̃t�H���g��ݒ肷����@
044 �J�����g�t�H���_�̎擾
045 �x�[�V�b�N�ȃt�@�C��IO
046 046 DLL���ĂԂ悤�ɂ���Ƃ�
047 �悭�g���}�N��
048 �N���X���C�u����
049 �\������
050 CMap����
051 �N���X �r���[�̃A�C�R���̈Ӗ�
052 �悭�g���V���[�g�J�b�g�ꗗ
053 Memory Details�̌���
054 �R�[�h�⊮���������@�\���Ȃ����̑Ώ����@
055 const
056 �_�C�i�~�b�N�L���X�g
057 ���ʃC���N���[�h�p�X�̐ݒ���@
058 �悭�������萔
059 new foo[0]�Ŏ擾�ł���A�h���X�̓�
060 �悭�Y���Ȃ��@qsort�̎g����
061 �}�N���̓o�^�̎d��
062 �f�o�b�K�[�Ńu���C�N�|�C���g������ƌł܂�I
063 �����̊���Z�͒��ӁI
064 �G���[�R�[�h�̈Ӗ��ׂ���
065 ���s�R�[�h���ꂱ��
066 EXE/DLL�̃f�o�b�O���ꂱ��
067 �A�C�R���̂��ꂱ��
068 �A�E�g�v�b�g�G���A�Ƀf�o�b�O�����o�������Ƃ�
069 �����K�w�ɓn��t�H���_���ꔭ�ō쐬�������Ƃ�
070 FileView �ɂ���N���X���AClassView�ɕ\������Ȃ��I
071 ���s���x�̃`���[�j���O
072 �����[�X�p�̃������ƃf�o�b�O�p�̃�����
073 �����o���̊��|�C���^
074 ���z���ƃC�����C����
075 �����w��̃u���C�N�|�C���g
20060713 �R�}���h���C���������ĉ��������Ă���H
20080716 �v���W�F�N�g�̏����i�[�t�H���_�̐ݒ���@
20080716 VS2008 �� �s���A�� C���� �R���\�[���A�v�����쐬������
20080717 Windows�g���@�\���ɂ�����
20080723 �R���p�C���x�� C4996�̗}��
20080725 �V���v���ɋ��ʊ��̎���
20080909 ���݂̏ꏊ�̃\�[�X �R�[�h��\���ł��܂���
20080918 �W���o�͂ƃG���[�o��
char (*p)[80]; 1999/12/27
main���ւ̈����œn�����B��P�����́A�R�}���h���C�������̐��B��Q�����́A������z��ւ̃|�C���^�ł���B
�Ȃ��z��P�ڂ́A�������g�̃t���p�X�t�@�C�����ł���A�K���n�����B����āA��P�����͍Œ�P�ɂȂ�B
��j�F�R�}���h���C�������̗�
#include <iostream.h>
void main(int argc, char *argv[] ){
cout << "argc=" << argc << endl;
int i;
for (i=0 ; i < argc ; ++i){
cout << "argv[" << i
<< "]=" << argv[i] << endl;
};
return;
}
1999/12/27
�T���v��
#include <iostream.h>
class classMoto{
public:
virtual int GetName()=0; //�������z��
};
class classA : public classMoto {
public:
int GetName(){
return 123;
};
};
class classB : public classMoto {
public:
int GetName(){
return 456;
};
};
int main() {
classA cAAA;
classA* pAAA;
classB cBBB;
classB* �@pBBB;
classMoto* pVVV;
pAAA = &cAAA;
pBBB = &cBBB;
cout << "pAAA->GetName()=" << pAAA->GetName() <<endl;
cout << "pBBB->GetName()=" << pBBB->GetName() <<endl;
pVVV = pAAA;
cout << "pAAA->GetName()=" << pVVV->GetName() <<endl;
pVVV = pBBB;
cout << "pBBB->GetName()=" << pVVV->GetName() <<endl;
return(0);
}
�T���v�����
�N���X�g�`�h�ƃN���X�g�a�h������B�������Q�Ƃł���|�C���^��p�ӂ��A���̃|�C���^�͂ǂ�����Q�Ƃ��Ă���̂��ׂ����B�����ŁA���ۃN���X�̉��z����݂��邱�ƂŊ����g�������邱�Ƃ��\�ƂȂ�B
���N���X���@virtual int GetName()=0�@�����z����ݒ肵�Ă���Ƃ���B=0 �ɂ��A���̂̂Ȃ��錾�����ɂȂ�K���q�N���X�ōĐ錾���Ȃ��Ă͂Ȃ�Ȃ��Ӗ��ɂȂ�B������������z���Ƃ����B
���s����
pAAA->GetName()=123
pBBB->GetName()=456
pAAA->GetName()=123
pBBB->GetName()=456
1999/12/27
�]��C�́A�|�C���^�n�������ł��������AC++�ł͎Q�Ɠn�����T�|�[�g���ꂽ�B
�Q�Ƃ́A�ϐ��̕ʖ��̂悤�Ȃ��̂ł���A�Q�Ɛ�̎��̂Ɠ������̂̂悤�Ɉ������Ƃ��ł���B
��j
main(){
int iii;
// �|�C���^�n���̗�
sub1(&iii);
// �Q�Ɠn���̗�
sub2(iii);
}
//�|�C���^�n���̈���
void sub1(int* iii){
}
//�Q�Ɠn���̈���
void sub2(int& iii){
}
1999/12/27
�Q�Ɠn��������ƁA��L�ł����Ƃ���� sub2 ���Ł@����iii�̓��e��ύX���Ă��܂���������Ȃ��B
�����ŁAvoid sub2(const�@int& iii)�@�Ƃ���ƁAsub2 ������iii���ύX�ł��Ȃ�����ۏ��邱�ƂɂȂ�B
2002/10/16
int iii1 =1; int iii2[3] ={1,2,3}; int iii3[2][3] ={{ 1, 2, 3},{11,12,13}}; struct staaa aaa1 ={ 1, 2}; struct staaa aaa1[2] ={{1, 2},{11,12}};
1999/12/28
printf("name=%s\n",name); | ������name�̊J�n�A�h���X���Anull�܂ł��o�́B |
printf("name=%6s\n",name); | ������name�̊J�n�A�h���X���Anull�܂ł��o�́B�U���������̂Ƃ��́A�K���U�����o�͂��� |
printf("name=%.6s\n",name); | ������name�̊J�n�A�h���X���Anull�܂ł��o�́B�U�����ȏ�̂Ƃ��́A�U���������o�͂��Ȃ� |
printf("name=%6.6s\n",name); | ������name�̊J�n�A�h���X���A�K���U�������E�l�o�́B����Ȃ����̓u�����N���� |
printf("name=%-6.6s\n",name); | ������name�̊J�n�A�h���X���A�K���U���������l�o�́B����Ȃ����̓u�����N���� |
printf("value=%X\n",value); | ����value���P�U�i�\���@%x��a�`f�A%X��A�`F�ŕ\�� |
printf("value=%d\n",value); | ����value���t���P0�i�\�� |
printf("value=%5d\n",value); | ����value���t���P0�i�\��.�B�E�l�����w�� value=67�̂Ƃ��A�g 67�h |
printf("value=%05d\n",value); | ����value���t���P0�i�\��.�B�O���ߌ����w�� value=67�̂Ƃ��A�g00067�h |
printf("value=%u\n",value); | ����value���Ȃ��P0�i�\�� |
printf("value=%3.2f\n",value); | ���������_value�x�w��ŕ\�� |
���ꂾ���m���Ă���A�قڑ��v�H
2000/01/05
2000/05/25 �lj�
2002/11/15 %05d �̐��������C��
2008/07/25 %5d �lj�
�@
���l�Ȃǂ��ȒP�ɕ�����ɕϊ�������@
int i = 10;
CString strIndex;
strTime.Format("i=%d ",i);
2003/02/05
cout << dec << value << endl; | ���lvalue��10�i�\�� |
cout << oct << value << endl; | ���lvalue��8�i�\�� |
cout << hex << value << endl; | ���lvalue��16�i�\�� |
cout.width(n); | �\��������n���ɂ��� |
cout.fill('����'); | �Ă��錅��'����'�Ŗ��߂� |
cout.setf(ios::right, ios::adjustfield); | �E�l |
cout.setf(ios::left, ios::adjustfield); | ���l |
cout.setf(ios::showpos); | �\�����鐔�l�������̎��g�{�h��擪�ɕ\������ |
cout.setf(ios::showpoint); | �����_�\�� |
cout.setf(ios::scientific, ios::floatfield); | �w���\�L |
cout.setf(ios::fixed, ios::floatfield); | �Œ菬���\�L |
cout.setf(ios::internal, ios::adjustfield); | cout.fill�Ŏw�肳�ꂽ����������Ώo�� |
���ꂾ���m���Ă���A�قڑ��v�H
2000/01/14
CArray<�^1,�^2> ���O;
CArray�̓N���X�e���v���[�g�ł��B
�^1,�^2���e���v���[�g�����ł��B
�^1�ɂ��z��Ɋi�[�����v�f�̌^�����܂�܂��B
�^2�ɂ��CArray�̃����o�ɃA�N�Z�X���鎞�̌^�����܂�܂��B(�����o���̈����Ƃ�)
��j
��a(){
CArray<CString,CString> aryStr; // CArray��CString�̔z����`
CString a;
a="test1";
aryStr.Add(a); // aryStr�֔z��v�f��lj�(1���)
//CArray<CString,CString> aryStr;�ƒ�`����Ă���̂ň�����CString�^�ɂȂ�B�@
a="test2";
aryStr.Add(a); // aryStr�֔z��v�f��lj�(2���)
cout << "�P�Ԗڂ̔z��v�f�̒l" << aryStr.GetAt(0) <<
endl;
cout << "�Q�Ԗڂ̔z��v�f�̒l" << aryStr.GetAt(1) <<
endl;
}
2000/01/27
���̂��i�[���鎞�͎��̂悤�ɂ���B
CAarrya<MyClass , MyClass&> arrMyClass;
��������ƁA�e���v���[�g�����ł�MyClass�@���@MyClass�@�Ȃ�B�܂�E�ӂ͎Q�ƂȂ̂ŃA�h���X�l���킽����邾���ōςށB
����CAarrya<MyClass , MyClass> arrMyClass;�@�Ƃ��Ă��܂���
�e���v���[�g�����̒i�K�ŃR�s�[������̂ŁA����/�j��������Ă��܂��̂ł�낵���Ȃ��B
2003/02/22
�b�{�{�ŗ�O���������o����ɂ�try�Acatch���g�p���܂��B
�G���[�����o����Ώ��͈͂�try{}�ň͂��܂��B
try
{
�����E�E�E�E�E�E;
�E�E�E�E�E�E�E;
�E
�E
�E
}
catch�Ō��o�����G���[�̗�O�������s���܂��B
catch(...)
{
��O�����E�E�E;
�E�E�E�E�E�E�E;
�E
�E
�E
}
catch�̌���()�̒��ɂ͑Ώ�����G���[�̎�ނ������܂��B(�G���[�̎�ނ͎����Œ��ׂĂ�������)
()�̒���...�������ƑS�Ă̗�O�ɑΉ����܂��B(�ǂ̗l�ȃG���[��������Ȃ���)
��)
void aaa(){
int a=0,b=0,c;
c=a/b; //0���ŃG���[����
}
void main( )
{
try // �G���[���o�́A�͈͂̎w��
{
cout << "��������G���[�̌��o��Ԃł�" <<
endl;
aaa();
} // �G���[���o�͈͏I��
catch(...)// ��O�����̓��e
{
cout << "�G���[���������܂���" <<
endl;
} //��O�����I��
}
2000/01/31
throw ����͎̂��́H�|�C���^���H
���̂ł��|�C���^�ł��A�Ƃɂ����@throw��ɏ��������̂̃R�s�[���n�����B
���̂������A���̃R�s�[�R���X�g���N�^���s���邵�A�|�C���^����������|�C���^�ϐ��̃R�s�[�܂�A�h���X�l���n�����B
try{
}
catch(classname* e){
}
throw new classname;
�Ƃ���ƁA�R�s�[�R���X�g���N�^������Ȃ��̂Ō������ǂ����Anew�����I�u�W�F�N�g��delete���K�v�ł���B��L�̗�ł�classname �����[�N���Ă��܂��B�����Ő�������delete����K�v������B
try{
}
catch(classname* e){
delete e;
}
throw new classname;
2003/03/04
private,protected,public�����o�̌p���ɂ��X�R�[�v�̕ω�
���N���X�����o�̃X�R�[�v | �p�� | �h���N���X�ł̊��N���X�����o�̃X�R�[�v | �N���X�O������̃A�N�Z�X |
public | public | public | �A�N�Z�X�\ |
protected | public | protected | �A�N�Z�X�s�� |
private | public | �A�N�Z�X�s�� | �A�N�Z�X�s�� |
�@ | �@ | �@ | �@ |
public | protected | protected | �A�N�Z�X�s�� |
protected | protected | protected | �A�N�Z�X�s�� |
private | protected | �A�N�Z�X�s�� | �A�N�Z�X�s�� |
�@ | �@ | �@ | �@ |
public | private | private | �A�N�Z�X�s�� |
protected | private | private | �A�N�Z�X�s�� |
private | private | �A�N�Z�X�s�� | �A�N�Z�X�s�� |
2000/02/04
//�\���̂��`����B
struct{
int a;
int b;
char *c;
}st1; //�\����st1���`����
//�\���̂�錾����B
struct aaa{ //struct�̌����\���̃^�O�������B
int a;
int b;
char *c;
}; //�\���̂�錾��������
struct aaa st2; //�\���̃^�O�ō\���̂��`�B�b�̎���"struct"��擪�ɂ��Ȃ���Ȃ�Ȃ��B
aaa st1; //�\���̃^�O�ō\���̂��`�B�b�{�{�̎���"struct"�����Ȃ��Ă��悢�B
���ł�typedef�ɂ���
struct��class�Ȃǂ͌^��錾������̂ł��B
typedef�͊����̌^�ɕʖ������܂��B
typedef �^ �ʖ�;�@�Ə����܂��B
��P�j
typedef int Integer;
Integer aaa; //int aaa;�Ɠ����Ӗ��ɂȂ�B
��Q�j
typdef struct aaa{ //�\���� "aaa"�^
��"bbb"�Ƃ����ʖ���t����B
int a;
int b;
char *c;
} bbb;
bbb St; //struct aaa St;�Ɠ����Ӗ��ɂȂ�B
��R�j
int�^��Ԃ����ւ̃|�C���^��typedef����ɂ�
typedef int (*pfunction)(char);
�Ə������肷��B
����ɂ���āA�ȉ��̗p�ɕ֗��ɂȂ�B
ex) �uint�^��Ԃ����ւ̃|�C���^�v��Ԃ�����`fff
int aaa(char a){�E�E�E�E�E�E�E�E�E�E�E�E�E�E}
pfunction fff(int a,int b){
return aaa
}
2000/02/07
�ǂ����A�C���X�^���X�̏����A�t�@�C���ȂǂɊi�[���邽�߂Ɏg�p����Ƃ��Ɏg�����݂����ł��B
Serialize���\�b�h�������Ƃł���݂����ł����A���̃��\�b�h���g�����߂ɕK�v�Ȃ��܂��Ȃ���
DECLARE_SERIAL�@�Ɓ@ IMPLEMENT_SERIAL�̂悤�ł��B
�Q�l�@http://www.asahi-net.or.jp/~yf8k-kbys/vcpp13.html
2000/02/21
Debug�̎���Release�̎��ŏ�����ς������Ƃ�
���j���[�o�[��[��ۼު��]��[�ݒ�]��I�����_�C�A���O��\�����܂��B
�ݒ�̑Ώۂ��gDebug�h�ɂ��āA�v���v���Z�b�T�̒�`�Łg_SP_NAGOYA�h�Ɠ��͂��Ă݂܂����B
#include <iostream.h>
void main(){
#ifdef _SP_NAGOYA
cout<< "NAGOYA" << endl;
//Debug�̎���_SP_NAGOYA����`����Ă���̂ł��̏��������s�����B
#else
cout<< "NAGOYA����Ȃ�" << endl;
//Release�̎���_SP_NAGOYA����`����ĂȂ��̂ł��̏��������s�����B
#endif
}
���̃v���O������Debug�\���̃v���W�F�N�g�Ŏ��s����ƁA�gNAGOYA�h�ƕ\������܂��B
Release�\���̃v���W�F�N�g�Ŏ��s����ƁA�gNAGOYA����Ȃ��h�ƕ\������܂��B
2000/02/21
�@
ATL COM AppWizard | COM���T�|�[�g����A�v���P�[�V�����p ATL (Active Template Library) �́A�e���v���[�g����{�ɂ��� C++ �̃N���X�̏W���ł��B�i�e���v���[�g�x�[�X�� COM �I�u�W�F�N�g�쐬�p���C�u�����j |
Cluster Resource Type Wizard | �H |
Custom AppWizard | AppWizard���J�X�^�}�C�Y���V����AppWizard���쐬����B |
DevStudio Add-in Wizard | �A�h�C���쐬�p �A�h�C�����g�p����ƁA�^�X�N�����s����R�}���h��lj����Ă��̃^�X�N���������ł��܂��B |
ISAPI Extension Wizard | ISAPI �g���@�\DLL �܂��̓t�B���^ DLL ���쐬����B |
Makefile | MFC �𗘗p���Ȃ��X�^�e�B�b�N ���C�u�������쐬���� .�B |
MFC ActiveX Control Wizard | ActiveX Control���쐬����Ƃ��p |
MFC AppWizard (dll) | MFC���g�p�����ADLL���쐬����Ƃ��p�B �i�܂��̓I�[�g���[�V�����p��VB���̉]���Ă���ActiveX DLL�ɑ����j |
MFC AppWizard (exel) | MFC(�t�H�[��)���g�p�����AEXE�p |
Utility Project | �H |
Win32 Application | MFC�N���X�̌Ăяo���ł͂Ȃ�Win32 API�̌Ăяo�����g�p����Windows�A�v���P�[�V�����p |
Win32 Console Application | ��ɃR���\�[���A�v���P�[�V�����p �i�R���p�C���I�v�V�����ɂ��AMFC�̗��p�j |
Win32 Dynamic-Link Library | DLL�̍쐬�p |
Win32 Static Library | �X�^�e�B�b�N ���C�u�����̍쐬�p �X�^�e�B�b�N ���C�u�����́A�I�u�W�F�N�g����т��̊��ƃf�[�^���������t�@�C���ŁA���s�\�t�@�C�����r���h����ۂɃv���O�����Ƀ����N����܂��B |
�@ | �@ |
2000/02/22
��ʓI��BSTR�^�́AOLE�iActiveX�j�p��Export���ŕ������Ԃ������Ƃ��Ɏg���܂��B���̊���VC++���ŕ��ʂ�printf���Ă����������\���ł��܂���BBSTR�^�́A�u�R�Q�r�b�g������|�C���^�v�Ƃ���̂ŁAunicode�n���Ǝv���܂��B�i������̐����j
�Ƃ肠�����ł����A�ȉ��̕��@�ł�fprintf�ł��܂����B
BSTR testsub(LPCTSTR str_in);
void main(){
BSTR bstr;
bstr = testsub("12345");
printf(">%S<\n\n",bstr);
// printf�ł����Ȃ��Ȃ�A%S���g���̂��~�\
wprintf(">%s<\n\n",bstr); // %s�ł����Ȃ��Ȃ�Awprintf�ł����Ȃ��̂��~�\
// %s���g�p����� bstr�̎Q�Ɛ��Unicode�Ȃ̂�{610061006200�E�E�E�E�E35000000}
//�ƂȂ��Ă��邽�߂Q�o�C�g�ڂ�NULL�ƔF������"a"�̂ݕ\�������
//(Windows�ł�unicode�́u���ʃo�C�g�{��ʃo�C�g�v�Ŋi�[����Ă���B0061��6100�ɂȂ�)
printf(">%s<\n\n",bstr);
}
BSTR testsub(LPCTSTR str_in){
CString str;
str = "aabbc";
str += str_in;
return str.AllocSysString();
};
���������A�S�p������BSTR�̒��ɓ����Ă����Ƃ��́A�������\���ł��܂���ł����B�������̕���������A�����Ă��������B
2000/06/17
���쌟�����Ă��鎞�ɁAprintf ��Acout���g�p����P�[�X���L�邩�Ǝv���܂����A��x��ʂɕ\�����ꂽ�����ŏ����Ă��܂��܂��B����́A�W���o�͐悪��ʂɂȂ��Ă��邩��ł��B
������t�@�C���ɕύX��������ɂ́A���̂悤�ɕW���o�͐��ύX����n�j�ł��B
��j�J�����g�t�H���_�� log.txt�ɏo�͂���ꍇ
[�v���W�F�N�g�̐ݒ�] �� [�f�o�b�O] �� [�J�e�S���F���]
�v���O�����̈����ɁA�u>log.txt�v
�ł��ATRACE�}�N���Ȃǂ��g�p���������A�����ƃX�}�[�g�Ȃ�ł��傤���ǁB
2000/07/25
��̃A�v���P�[�V�����P�ʂɃv���W�F�N�g������B
-> dsp�@
��ȏ�̃v���W�F�N�g���܂Ƃ߂āA���[�N�X�y�[�X�Ƃ����P�ʂ�����B
-> dsw
�G�N�X�v���[���[����VC++���N�����鎞�́Adsw�� ���ʂ̓N���b�N���悤�I
2002/08/27
2002/10/22 �V�̐�����̂��w���ɂďC��
nafxcwd.lib(thrdcore.obj) : error LNK2001: �O������� "__endthreadex" �͖������ł�
nafxcwd.lib(thrdcore.obj) : error LNK2001: �O������� "__beginthreadex" �͖������ł�
Debug/start1.exe : fatal error LNK1120: �O���Q�� 2 ���������ł��B
MFC���g�����R�[�f�B���O�ɑ��A�v���W�F�N�g�̐ݒ�iALT
+
F7�j�ŁuMFC���g�p���Ȃ��v�ɂȂ��Ă���Ƃ悭�o�܂��B�m�F�I
2002/09/28
Microsoft Foundation Class���u MFC�̃X�^�e�B�b�N���C�u�������g�p�v���u���LDLL��MFC�g�p�v��I��
���ɁuC/C++�v�^�u��I�����܂��B�u�J�e�S���v���u�R�[�h�����v�ɂ��܂��B
�u��ʁv�ŁuMFC�̃X�^�e�B�b�N���C�u�������g�p�v��I�������ꍇ�́u�g�p���郉���^�C�����C�u�����v���u�}���`�X���b�h�v�ɂ��܂��B
�u���LDLL��MFC���g�p�v��I�������ꍇ�́u�}���`�X���b�h(DLL)�v��I�����܂��B
2002/10/03
���ӁF�v���R���p�C���ς݃w�b�_�[���g���Ƃ��͂��ׂĂ�*.c,*.cpp�t�@�C����
#include "StdAfx.h"
�Ƃ����s�������K�v������܂��B����������Ȃ��Ƃ��̃t�@�C���̃R���p�C������
fatal error C1010: ��غ��ٍ߲ς�ͯ�ް�̌������ɗ\�����Ȃ� EOF �����o���܂����B
�Ƃ����G���[���\������܂��B
http://www.sam.hi-ho.ne.jp/mi-k/program/non_mfc1.shtml
2002/10/10
#if !defined _changeTime_h_
#define _changeTime_h_
void testfunc();
#endif
2002/10/10
CTest* pTest;
pTest = new CTest[50];
delete [] pTest;
2002/10/15
http://www.geocities.co.jp/Hollywood/2358/mfc_7.html
�v���R���p�C���ς݃w�b�_ ���ĉ��H
�v���R���p�C���ς݃w�b�_�Ƃ́A�V�X�e�����C�u�����̃C���N���[�h�t�@�C���ȂǁA���e���قڕύX����Ȃ��C���N���[�h�����炩���߃R���p�C�����Ă����A����R���p�C�����Ȃ��悤�ɂ��邱�ƂŃr���h��������������̂ł��B
�ʂɃr���h�Ɋ|���鎞�Ԃ������Ė��ł͂Ȃ��i�ŋ߂�PC�Ȃ甜��Ȏ��Ԃ��|����قǂ̃V�X�e���͂������������ł�����ˁj�Ȃ�v���R���p�C���ς݃w�b�_�͎g��Ȃ��Ă����v�c���������B
�v���R���p�C���ς݃w�b�_�����t�@�C����[�v���W�F�N�g]��[�ݒ�]��[C/C++]�^�u��[�J�e�S��]����[�v���R���p�C���ς݃w�b�_�[]��I�����C"�v���R���p�C���ς݃w�b�_�[�t�@�C���i.pch�j�̍쐬"���`�F�b�N����D
�v���R���p�C���ς݃w�b�_���g���t�@�C����[�v���W�F�N�g]��[�ݒ�]��[C/C++]�^�u��"�v���R���p�C���ς݃w�b�_�[�t�@�C���i.pch�j���g�p"���`�F�b�N����D
http://ahirujigen.hp.infoseek.co.jp/code_vc00.htm
2002/10/15
BOOL CMy20021015_MApp::InitInstance()
{
AfxEnableControlContainer();
// �W���I�ȏ���������
// ���������̋@�\���g�p�����A���s�t�@�C���̃T�C�Y��������������
// ��Έȉ��̓���̏��������[�`���̒�����s�K�v�Ȃ��̂��폜����
// ���������B
#ifdef _AFXDLL
Enable3dControls(); // ���L DLL ���� MFC ���g���ꍇ�͂������R�[�����Ă��������B
#else
Enable3dControlsStatic(); // MFC �ƐÓI�Ƀ����N����ꍇ�͂������R�[�����Ă��������B
#endif
AfxMessageBox(this->m_lpCmdLine); //�����ł͎���
CMy20021015_MApp�́A�E�B�U�[�h�����������A���C���A�v���P�[�V�����N���X�ɂȂ�܂��B
���̃N���X�� CWinApp ���p�����܂��B
CWinApp�́A�p�u���b�N�ϐ���m_lpCmdLine��ێ����Ă��܂��B
2002/10/15
����ȕ��@������悤�ł��B
void CWinApp::ParseCommandLine(CCommandLineInfo& rCmdInfo)
�������A�����̈������ЂƂÂ擾����ɂ́A���X�������K�v�Ȗ͗l�ł��ˁ`
2004/06/28
http://www.ne.jp/asahi/yamashita/programming/tips/mfc_misc_faq.html
2002/10/15
static�ȃ����o�ϐ��� �N���X�錾���ł̐錾�ȊO�� �ǂ����Ŏ��̂���`����Ă���K�v������B
// xxx.h
class Test{
static int SOMEVALUE;�@// <- static�����o�ϐ��̐錾
};
...
// xxx.cpp
int Test::SOMEVALUE = 0; // <- ���̂̒�` & �l�̏�����
2002/10/16
�N���X���g���āA�N���X�����ɔ�r������������
2002/10/20
#include "stdafx.h"
#include <windows.h>
#include <stdlib.h>
API�֘A�̃w���v�ɂ́AWinbase.h�@�ȂǂƏ�����Ă��邪�Awindows.h����荞�܂Ȃ��ƃR���p�C���G���[����������ł�Bwindows.h����荞�߂A����������API�͂�����Ǝv����B
2002/10/21
/OPT (�œK��)
/OPT:{REF|NOREF|ICF[,iterations]|NOICF}
���̃I�v�V�����́A�r���h���� LINK ���s���œK���𐧌䂵�܂��B�ʏ�A�œK���ɂ���ăC���[�W�̃T�C�Y���������Ȃ�A�v���O�����̎��s���x�����サ�܂��B�������A���̑���Ƀ����N���Ԃ������Ȃ�܂��B
MSDN ����A/OPT �ɂČ�������B
2002/10/30
void CTestDlg::OnButton1()
{
// TODO: ���̈ʒu�ɃR���g���[���ʒm�n���h���p�̃R�[�h��lj����Ă�������
CListBox* pListBox;
pListBox = (CListBox*)this->GetDlgItem(IDC_LIST1);
pListBox->AddString("a");
pListBox->AddString("b");
pListBox->AddString("c");
pListBox->AddString("d");
pListBox->AddString("e");
}
2002/11/05
�������_�C�A���O�A�v���P�[�V���������L
�T���Ƃ����ς����肻���ł����A�܂��́A����
�}�C�N���\�t�g �T�|�[�g�Z�p��� - JP175030
2002/11/08
/*
DateUtility.h
*/ class CDateUtility { public: virtual ~CDateUtility(); /*���t����A�j���ɕϊ�����*/ static int ConvDayOfWeek(int Year, int Month, int Day ); private: CDateUtility(); /*�C���X�^���X�����֎~*/ };
/*
DateUtility.cpp
*/ int CDateUtility::ConvDayOfWeek(int Year, int Month, int Day ) { int rtn; int originalDay; static int t[] = {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4}; Year -= Month < 3; originalDay = (Year + Year/4 - Year/100 + Year/400 + t[Month-1] + Day) % 7; rtn = (originalDay + 6) % 7; return rtn; }
#include "DateUtility.h"
int main(int argc, char* argv[])
{
int rtn =CDateUtility::ConvDayOfWeek(2002,11,12);
printf("%d\n",rtn);
return 0;
}
�Ăё��ŁA�N���X���F�F���\�b�h���@�ł��B�@�N���X���\�b�h�ƂȂ�̂ŁA�C���X�^���X�����Ȃ��Ă��g�p�ł��܂��B�������AStatic�̂��Ă��Ȃ������o�[�ϐ�����o�[�����ĂԂƗ�����낤��
2002/11/12
CTime�͐�Ύ��ԁACTimeSpan�͑��Ύ��Ԃƃw���v�ɂ͂��邪�A�v�́A
100����53�b�Ƃ��A500���Ƃ������A�l��CTimeSpan�ŕ\�����悤�Ƃ������ƁB
CTime �� CTimeSpan �� 2 �̃I�u�W�F�N�g���g���āA���̂悤�Ɍo�ߎ��Ԃ��v�Z���܂��B
CTime startTime = CTime::GetCurrentTime();
// ... perform time-consuming task ...
CTime endTime = CTime::GetCurrentTime();
CTimeSpan elapsedTime = endTime - startTime;
2002/12/14
�C���[�W
int function(){
int ret = 1:
return ret;
}
���̂Ƃ��Afunction�̖߂�l�ł���ret�́A�Ăь��ɒl�̃R�s�[������Ă���B������A�����ϐ����X�R�[�v���͂���Ĕj��Ă��L���Ȃ̂ł���B
2002/12/16
�f�[�^�^ | �T�C�Y | �ď� | �\���͈� | ||
char | 1 | �����^ | -128 | �` | 127 |
unsigned char | 1 | �����������^ | 0 | �` | 255 |
short int | 2 | �Z�����^ | -32,768 | �` | 32,767 |
unsigned short int | 2 | �������Z�����^ | 0 | �` | 65,536 |
int | 4 | �����^ | -2,147,483,648 | �` | 2,147,483,647 |
unsigned int | 4 | �����������^ | 0 | �` | 4,294,967,295 |
long | 4 | �{�����^ | -2,147,483,648 | �` | 2,147,483,647 |
unsigned long | 4 | �������{�����^ | 0 | �` | 4,294,967,295 |
float�@�� | 4 | �P���x�����^ | 1.175494351e-38F | �` | 3.402823466e+38F |
double�� | 8 | �{���x�����^ | 2.2250738585072014e-308 | �` | 1.7976931348623158e+308 |
���ڂ����́AMSDN�Q�Ɓ@�L�[���[�h�Ffloat�^�͈̔�
2002/12/28
VC++�̏ꍇ�ɂ́A�ȉ��̌^�����݂���B�ڍׂ�MSDN [�f�[�^�^�͈̔�]
__int8�A__int16�A__int32�A__int64�@�@__int64�́A�}�N���錾������悤���I
2003/03/08
2003/03/21
xxxxxxx.h(21) : error C2065: 'IDD_XXXXXXXX_DIALOG' : ��`����Ă��Ȃ����ʎq�ł��B
���̎��ʎq�́AResource.h�ɐ錾����Ă���B�錾���ꂢ�邩�m�F���邱�ƂƁA�w�b�_�[���̂��̂��C���N���[�h����Ă��鎖���m�F���邱�ƁB
2003/01/21
[���j���[�o�[]��[�}��]��[�N���X]
�u�N���X�̎�ށv�R���{�N�b�N�X�Łggeneric�N���X�h�ɂ���ƁA��ԃV���v���ȃN���X���ł����B
2003/01/21
http://www.angel.ne.jp/~mike/vb_dll/index.html�@���Q�l�ɂ��܂��傤�B
�悭�ADeclare�錾�Ł@Alias XXXX@8�@�Ƃ��錾���K�v�ȏꍇ�����邪�A
LIBRARY InputCheck.dll
EXPORTS
CharCheck @1
TimeCheck @2
DateCheck @3
�̂悤�ɂ���AAlias�͕s�v�ɂȂ�݂������B
2003/01/25
Microsoft Visual Basic Version 5.0 �Ŏg�p���� DLL �̊J���Ɋւ��钍��
http://www.microsoft.com/japan/msdn/vs_previous/vbasic/docs/dll/#5
�C���X�g�[���������ɂȂ�炩�̌�����MSDN�̃V���[�g�J�b�g����������Ȃ������������B
�蓮�œo�^�������ɂ́A���̗l�ɂ���Ɨǂ��B
�����N��
C:\WINNT\hh.exe C:\Program Files\Microsoft Visual Studio\MSDN\2001OCT\1041\MSDN130.COL
��ƃt�H���_�́@MSDN130.COL�@�����݂���t�H���_
2003/01/27
2003/01/27
[���j���[�o�[]��[�c�[��]��[�I�v�V����]
2003/01/28
char *_getcwd( char *buffer, int maxlen );
#include <stdio.h>
#include <string.h>
struct recTest{
char d01[100];
char d02[100];
char d03[100];
char d04[100];
char d05[100];
char d06[100];
char d07[100];
char d08[100];
char d09[100];
char d10[100];
char crlf[1];
};
// �P���ɁA�t�@�C����io���s���Ă݂�
FILE* fp1;
FILE* fp2;
recTest rec1;
recTest rec2;
int ix = 0;
if ((fp1=fopen("data1.txt","r")) == NULL ) {
printf("data1.txt �I�[�v�����s\n");
}else if ((fp2=fopen("data2.txt","w")) == NULL ) {
printf("data2.txt �I�[�v�����s\n");
}else{
while (fread(&rec1,sizeof(rec1),1,fp1)){
memcpy(&rec2,&rec1,sizeof(rec2));
fwrite(&rec2,sizeof(rec2),1,fp2);
ix ++;
}
fclose(fp1);
fclose(fp2);
printf("�ǂݍ�����=%d",ix);
}
�t�@�C���̃����O�X����Ꝅ�ɓǂݍ��ޕ��@
// �t�@�C���̃T�C�Y�����߂悤
CFile file;
file.Open("data1.txt",CFile::modeRead);
int leng = file.GetLength();
file.Close();
int reccount = leng/(sizeof(recTest)+0);
// �P���ɁA�t�@�C����io���s���Ă݂�
FILE* fp1;
FILE* fp2;
recTest rec1;
recTest rec2;
int ix = 0;
recTest* prec = new recTest[reccount];
if ((fp1=fopen("data1.txt","r")) == NULL ) {
printf("data1.txt �I�[�v�����s\n");
}else if ((fp2=fopen("data2.txt","w")) == NULL ) {
printf("data2.txt �I�[�v�����s\n");
}else{
fread(prec,leng,1,fp1);
fwrite(prec,leng,1,fp2);
fclose(fp1);
fclose(fp2);
printf("�ǂݍ�����=%d",reccount);
}
delete []prec;
2003/02/06
DLL��ÓI�����N����ۂɗ��p���ƂȂ���̂́A
�w�b�_�t�@�C�������ꂪ�����ƁA�R���p�C�����ʂ�Ȃ��B
LIB�t�@�C�������̂Ȃ��ɁA���ꂼ���EXPORT�������̃G���g���[�|�C���g�������Ă���B�����N����ۂɕK�v�B
���s���ɕK�v�Ȃ��̂́A�����p�X��DLL�t�@�C�������邾���ł悢�B
DLL�t�@�C�����C�������ꍇ�A�C���^�[�t�F�C�X��ς��Ȃ���ALIB�͍Ĕz�z����K�v�͂Ȃ��B�܂�A�Ăь��̃��R���p�C�����r���h�͕K�v�Ȃ��B
2003/09/05
_DEBUG | �f�o�b�O���[�h�ŃR���p�C�������Ƃ� #ifdef _DEBUG AfxMessageBox("�f�o�b�O���[�h!!"); #endif |
__FILE__�@ | ���݂̃\�[�X �t�@�C�����B__FILE__ �͓W�J����A��d���p���ň͂܂ꂽ������ɂȂ�܂��B |
__LINE__�@ | ���݂̃\�[�X �t�@�C���̍s�ԍ��B�s�ԍ��� 10 �i�̐����萔�ɂȂ�܂��B���̒l�� #line �f�B���N�e�B�u�ŕύX�ł��܂��B |
�@ |
�N���X���C�u�����̍����͗\�z�ȏ�ɊȒP�BVB��AC����ĂԕK�v���Ȃ��AVC++���炾���Ă�Ηǂ��̂ł���Ȃ�A�N���X���C�u���������������ȒP�ł���B
�T���́AMFC�@DLL�x�[�X�Ńo�C�i�����쐬����B���̍ہA�O���Ɍ��J���邽�߂̏C���qExport�������OK�B���Ƃ́A���̃N���X�ɑ��ACString�̂��Ƃ��N���X�Ƃ��ĒP�ɗ��p���邾���ł���B
2003/02/14
�\������
while( �P�̊� ){
continue;
}
CMap����̑S����肾����@MSDN�@�u�@�R���N�V���� : �R���N�V�����̑S�����o�̃A�N�Z�X�@�v
CMap<CString, LPCTSTR, CPerson*, CPerson*> myMap;
POSITION pos = myMap.GetStartPosition();
while( pos != NULL )
{
CPerson* pPerson;
CString string;
// Get key ( string ) and value ( pPerson )
myMap.GetNextAssoc( pos, string, pPerson );
// Use string and pPerson
}
2003/02/22�@
CMap<CString,LPCTSTR,int,int> myMap;
2004/04/27
MSDN [ClassView �̎g�����v�Ō���
2003/03/01
�r���h�n
Ctrl + F5 | ���s | �f�o�b�O�n�̂e�T�ƁA�ǂ��Ⴄ���H |
Ctrl + F7 | ���݂̃t�@�C���������R���p�C�� | �@ |
�@ | �@ | �@ |
�G�f�B�^�n
Ctrl + Shift + 8 | TAB�A���s�L�� �� �\��/��\�����ւ��� | ���j���[�o�[�F�ҏW�����x�ȑ��� ������\ |
�@ | �@ | �@ |
�f�o�b�N�n
F9 | �X�g�b�v�}�[�N��ݒ�/���� | ���\�b�h������Ŏ~�߂������́@�o�@�̂���s�Ŏw�肷�邱�� |
Ctrl + Shift + F9 | �S�ẴX�g�b�v�}�[�N������ | ���\�b�h������Ŏ~�߂������́@�o�@�̂���s�Ŏw�肷�邱�� |
F�T | ���s �R���p�C�����Ă��Ȃ��t�@�C���͎����r���h |
�@ |
F10 | ������Ȃ��ŁA���̂܂܃X�e�b�v���s | �@ |
F11 | ������Ȃ���A�X�e�b�v���s | �@ |
Shift + F11 | ��֏オ��Ȃ���A�X�e�b�v���s | �@ |
Ctrl + F10 | �J�[�\���s�܂Ŏ��s | �@ |
�@ | �@ | �@ |
F5 �� Ctrl + F5 �͂ǂ��Ⴄ���H
�R���\�[���A�v���P�[�V�����ł́ACtrl + F5�ɂĎ��s����ƁA�R���\�[��������O��HitAnyKey���\������Ĉꎞ��~���邪�AF5�ł͎��s��u���ɃR���\�[�������Ă��܂��B
2004/03/11
http://www.microsoft.com/japan/developer/library/vcug/_asug_memory_details_dialog_box.htm
2003/03/02
�g���q ncb �̃t�@�C�����폜���āA�Đ���������B�����Ă�����
2003/03/04
const �^ �ϐ���
const�t���̃|�C���^�ϐ��́A�����܂ŁA�w��������̃I�u�W�F�N�g�̓��e���Œ�ɂȂ�Ƃ������ƁB�A�h���X�l�͕ύX�ł���B
���������A�����̒l�́A�K���R�s�[����Ă���킯������A�iconst
int i�j�Ȃ�Ă���Ă��Ӗ��������̂�
void test4_2(const int* i){
const int* pi = i;
pi = i; //������Ă��ǂ�
pi = NULL;�@//�l��ύX�ł���
pi = i;
*pi = 2; //�R���p�C���G���[�@�w�������G���A�̒l�͕ς����Ȃ��B
}
�^ const �ϐ���
����́@const char* name ���Aname���������̂̒l�������������Ȃ��̂ɑ���
�@�@�@�@�@char* const name
�́Aname�̎������̂̓��e�͒��ւ����邪�A���̎��̂͂����Ȃ��Ƃ������ƁB
����Aconst char* const name ���Ă���H���x���ׂĂ݂悤
���t�@�����X�������l����
void test5_1(const int& i){
int i1 = i;
i1 = 3; //OK�@i�̎������g�ʂ����ʂ��̂�����OK
i = 3; //�R���p�C���G���[�@i�̓R���X�g�I�u�W�F�N�g
}
2003/03/10
�����N������Ĉ�x�����܂��傤
http://tt.sakura.ne.jp/~suzu/tips/cast.html
�Ȃ��AVC++�Ń_�C�i�~�b�N�L���X�g���g�p����Ƃ��́A���L�̐ݒ�����Ă����K�v������B
�������Ȃ���
dynamic_cast' �� /GR- ���g�p�������Ӱ̨���^ 'class ClassName' �Ŏg�p����Ă��܂�; ���쌋�ʂ͕ۏ���܂���B
���\������Ă��܂��B
2003/04/19
..\..\..\include,..\..\..\..\common\include �̂悤�ɁA�J���}��ŕ����ݒ�ł���
���C�u�����̃p�X�̒lj�
2003/03/25
VS2008 �ł́A�w����@���ς���Ă��遨20080725_vs2008_simple_common_function_implement/vs2008_simple_common_function_implement.html
#define MAX_PATH 260
windef.h
new foo[n] �Ŕz����쐬�����ꍇ�ɁA�m�ۂ���郁�����̈�́usizeof(foo) * n + �f���~�^�̃T�C�Y�v���ł���B
�����
foo *pfoo = new foo[0];
�Ŏ擾�ł���pfoo�̃A�h���X��new�ŃA���P�[�g���ꂽ�z��̃f���~�^�̃A�h���X�ł���B
�i�ufoo * 0 + �f���~�^�v���A���P�[�g�����)
qsort(array.GetData(), // �\�[�g����z��̐擪 array.GetSize(), // �z��̗v�f�� sizeof(ClassName*) , // �z��v�f�̃T�C�Y ���̗�́A�|�C���^�l�����[�Ƃ��� class::compareFunction // ��r�� ); int class::compareFunction(const void *pkey1, const void *pkey2){
ClassName
** p1 = (
ClassName
**)pkey1;
ClassName
** p2 = (
ClassName
**)pkey2; //p1 < p2 �͕���Ԃ����� �@�@//p1 == p2 �͂O��Ԃ����� //p1 > p2 �͐���Ԃ����Ɓ@�@�~���ɂ���ꍇ�́A�t�ł� �@�@return (*p1)->value - (*p2)->value; }
2003/05/06
�l�b�g�ŕ֗��ȃ}�N�����o�^����Ă���B������AIDE�ォ��ȒP�Ɏ��s�ł���悤�ɂ��鎞�̕��@�ɂ��āB
2003/06/06
�����̃R�[�f�B�O�o�O������̂�������܂��A����y�[�W�ŎQ�l�ɂȂ鎖�������Ă���܂����B
�@�ŏ��̓C���X�g�[�����Ă���Windows�̂ǂ����������Ă��܂��Ă���̂��Ƃ��v���A���x��Windows XP �̃N���[���C���X�g�[���� Visual Studio �̃C���X�g�[������蒼������A���邢�͐F�X�ȃf�o�C�X�������Ă݂�������܂������A�܂��������܂�܂���ł����B�@�����čŌ�ɋ^�����̂�IME�W�B �@XP�ł͐V���� �u����o�[�v ����������Ă���A�ǂ������̌���o�[��Visual Studio �̃f�o�b�K�̑������ǂ��Ȃ��悤�ȋC�����Ă��܂����B
�@����o�[�̏�Ԃ́A�R���g���[���p�l���́u�n��ƌ���̃I�v�V�����v�����\���ɂ��鎖���ł��܂����A����o�[�̃v���O�������̂ł��� CTFMON.EXE �́A�ˑR���O�C�����ɕK���v���Z�X�Ƃ��Ď����I�Ƀ��[�h����Ă��܂��܂��B
�@���̎������[�h���w�肵�Ă��郌�W�X�g�� ( HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run ) �� CTFMON.EXE�̃��[�h���w�肵�Ă��镔������ō폜���Ă��A����Windows�N�����ɂ͎����I�ɐݒ肪�������Ă��܂��Ƃ���ȂǁA�@�u���̃v���O�����A�܂��܂��������I�v�@�Ǝv���܂����B
http://www.wg7.com/w2ktips/#CTFMON
������Q�l�Ƀ��W�X�g����������Ă݂܂�����A�����ł܂�Ȃ��Ȃ�܂����˂��`
2003/06/17
�����ǂ����̊���Z�́A�����̌^�ɊW�Ȃ��A�����ɂȂ��Ă��܂��܂��B
float f;
int a = 5;
int b = 7;
f = a / b;
���́A�[���ɂȂ��Ă��܂��܂��B�����C�̋K���̂悤�ł��B
���҂���l�����߂�ׂɂ́A�ǂ��炩��float�^�ɃL���X�g����Ηǂ��悤�ł��B
float f;
int a = 5;
int b = 7;
f = (float)a / b;
2003/06/18�@
GetLastError���̖߂�l�̐��l����A�G���[�̈Ӗ��ׂ������ɁA�֗���TOOL������B
[�X�^�[�g]��[�v���O����]��[Microsoft Visual Studio 6.0]��[Microsoft Visual Studio 6.0 �c�[��]��[Error Lookup]
2003/07/22
sprintf("abc\ndef\n");
�̂悤�ɕ�������쐬���A�t�@�C���ɏo�͂����B������G�ۂŊJ���Ɛ��������s���Ă����̂ł��邪�A�m�[�g�p�b�h�ŊJ����
abc��def��
�̂悤�ɕ\������Ă��܂��B
�o�C�i���G�f�B�^�Ŋm�F����ƁA"\n"�́A0x0A
�ł������B
�G�ۂł�0x0A�����ł����s�\�����Ă���邪�A�m�[�g�p�b�h��0x0D0A������Ȃ��ƃ_���݂����ł���B
sprintf("abc\r\ndef\r\n");
MSDN
���L���̋K��
�K�� | �Ӗ� |
\a | �x�� (0x07) |
\b | �o�b�N�X���b�V�� (0x08) |
\f | ���y�[�W (0x0c) |
\n | ���s (0x0a) |
\r | �L�����b�W ���^�[�� (0x0d) |
\t | �����^�u (0x09) |
\v | �����^�u (0x0b) |
\\ | �o�b�N�X���b�V�� (0x5c) |
\" | ���p�� (0x22) |
\' | �P����p�� (0x27) |
\nnn | ���� 8 �i�l�� nnn �ł��镶�� (������ n �� 0�`7) |
\Xnn | ���� 16 �i�l�� nn �ł��镶�� (������ n �� 0�`9�Aa�`f �܂��� A�`F) |
2003/08/14
2003/09/01
2003/09/11
winbase.h
VOID OutputDebugString(LPCSTR lpOutputString)
���g�p����
dprintf ���g�p����B
#include <dprintf.h>
------------------------
#ifdef DEBUG
dprintf("%s=%d\n","aaa",1);
#endif
�E#include <dprintf.h> ��錾���邱�ƁB
�EDEBUG ��錾���Ȃ��ƁA�����ɂȂ�B
2003/10/30
C:\aaa �����݂��Ă���Ƃ��ɁA C:\aaa\bbb\ccc\ ���쐬�������Ƃ��ɂǂ����邩�H
MakeSureDirectoryPathExists ���g�p����Ηǂ��B
#include <imagehlp.h>
BOOL Brtn = MakeSureDirectoryPathExists("c:\\aaa\\bbb\\ccc\\");
�������Aimagehlp.lib ��g�ݍ��ޕK�v����B
�t�H���_���ɁA�X���b�V���w��͂ł��Ȃ�����
2003/10/30
�w�b�_�t�@�C�����v���W�F�N�g�ɓo�^����Ă��邩�m�F�I
2004/01/23
�J���Ώۃ\�[�X���f�o�b�O�r���h�ŊJ�������Ă���B�g�p����DLL�̓����[�X�r���h����Ă���B
�J���Ώۃ\�[�X����CArray��DLL���ɓn���ă����o���Z�b�g���Ă��������A�J���Ώۑ���CArray��RemoveAll���s���ƁACArray���̃������������Assert���������Ă��܂����ۂ��������B
���@����ƁADLL���܂胊���[�X�pCArray�Ƀf�[�^��lj����鎞�́A�������̍ăA���P�[�g���ɃC���[�W�̓����[�X�p�ł��邪�A�f�o�b�O���Ń��������������Ƃ��́A�f�o�b�O�C���[�W�ł���ɂ��ւ�炸�A�f�o�b�O�p�̏�����̂�Assert�����������Ǝv����B
�܂�A�����[�X���[�h�ŃA���P�[�g�����̈���f�o�b�O���[�h�ʼn������ƁA�x�������������Ɖ��߂����B
�������@�́A�A���P�[�g���Ɖ�����̃������̎��������킹��Ηǂ���ł���B
����́A�f�o�b�O�r���h���ꂽDLL�����ł��Ȃ������̂ŁA�J���Ώۑ��̃������̎����������[�X�p�ɍ��킹���B
���̕��@
[�v���W�F�N�g�̐ݒ�]��[C/C++]��[�J�e�S���F���]��[�v���v���Z�b�T]
_DEBUG �� ���Ηǂ��B
�Q�� MSDN �F �������Ǘ��ƃf�o�b�O �q�[�v
2004/04/23
http://www1.kcn.ne.jp/~robe/cpphtml/html03/cpp03057.html
2004/05/05
�X�[�p�[�N���X�ɂ���C�����C���w�肳�ꂽ���z�����A�T�u�N���X�ŃI�[�o�[���C�Y���Ă���ꍇ�A�ǂ̂悤�Ȏ����N���邩�H
�C�����C�����́A�R���p�C�����ɌĂь��ɓW�J����鎖������B���z���͎��s���ɃT�u�N���X�����݂���ꍇ�Ɏ��s����������ւ��鎖���ł���̂ŁA�R���p�C�����Ɋm��ł��Ȃ��`�B
�ŁA���ۂɍs�Ȃ��Ƃǂ��Ȃ邩�H
�ǂ����C�����C���w��͖�������Ă��邩�̔@���A����ɓ��삵���B
���܂��s���Ȃ����́A���r���h�������I������Ŏ��̓n�}�b�^
2004/05/31
�\�[�X�G�f�B�^��� F9 ������A�u���C�N�|�C���g��ݒ�ł���B���A�C�ӂ̏����̎�������~���ė~�����Ƃ��́A�ȉ��̕��@���ȒP�B
2004/05/31
�R���g���[�����_�C�A���O�̃����o�[�Ƃ��ăA�N�Z�X�ł���Ηǂ���ł���
2004/05/31
int main(int argc, char* argv[])
[0]�́A�v���O���������̂��̂������ė��܂��B
[�P]�ȍ~�ɁA�������ݒ肳��Ă��܂��B
����́AWindows�ł��AUNIX�ł� �����Ȃ悤�ł��B
VS2008
�����l�́A
C:\Documents and Settings\UserId\My Documents\Visual Studio 2008\Projects
�ł���B������A�ύX����ɂ́A�ȉ��̃_�C�A���O���ݒ肷��
vs2008���ŁA����I�ȃx�^C�\�[�X���쐬���Ă݂����B�ǂ�����Ă�邩�c�H
���ۂɂ���Ă݂��B�R�R���Q��
�v���W�F�N�g�̃v���p�e�B�[�V�[�g����ݒ肷��
http://msdn.microsoft.com/ja-jp/library/0k0w269d.aspx
Microsoft C/C++ �̊g���@�\
http://msdn.microsoft.com/ja-jp/library/34h23df8.aspx
��Ƃ��āA�ȑO���ʂɎg���Ă��� strcpy���g�p����ƁA�R���p�C�����Ƀ��[�j���O�ɂȂ��Ă��܂��B
�@
#include <stdio.h> #include <string.h> #include "proto_conv_instance_id.h" int proto_conv_setup(const char* file_name, int record_size){ return 0; }; int proto_conv_get_instance_id(const char* key, char* instance_id){ strcpy(instance_id,"�C���X�^���XID�����Ă݂�"); strcpy(key,"�L�[��ύX���Ă݂�"); return 0; };
�x�� 1 warning C4996: 'strcpy': This function or variable may be unsafe. �c
�����}������ɂ́A#define _CRT_SECURE_NO_DEPRECATE ��t����Ηǂ�
�@
#define _CRT_SECURE_NO_DEPRECATE #include <stdio.h> #include <string.h> #include "proto_conv_instance_id.h" int proto_conv_setup(const char* file_name, int record_size){ return 0; }; int proto_conv_get_instance_id(const char* key, char* instance_id){ strcpy(instance_id,"�C���X�^���XID�����Ă݂�"); strcpy(key,"�L�[��ύX���Ă݂�"); return 0; };�x���ɂȂ���̃w�b�_�����A��� �錾���鎖���|�C���g
������EXE����g�p����鋤�ʊ��̊J��������Ƃ��́A���
�����Ƃ��V���v���Ȍ`���Ƃ肽���B���R���\�[���A�v���P�[�V�����A�X�^�e�B�b�N�����N
VS2008
����ȃ��b�Z�[�W���\������āA�f�o�b�O�ł��Ȃ��Ȃ��Ă��܂����B
�����͉𖾂ł��Ă��Ȃ����A�ȉ��̐ݒ������ƁA�Ƃ肦�����A���y�ł��邩������Ȃ�
[�c�[��]��[�I�v�V����]
���̃`�F�b�N��OFF�ɂ��Ă݂邱��
printf �Ȃǂ�p���āA���b�Z�[�W���o�͂���Ƃ��A�W���ƃG���[������@������
fprintf(stdout,"okokok"); fprintf(stderr,"ererere");
��L�̂悤�Ɏ������Ă����ƁA
hogehoge.exe > info.txt 2> err.txt
���ꂼ��
> �W���o�� �cstdout
2> �G���[�o�́cstderr
�@
stdout stderr �́A���ꂼ�� stdio.h �� �錾����Ă���BMS VC++�̏ꍇ
#ifndef _STDSTREAM_DEFINED #define stdin (&__iob_func()[0]) #define stdout (&__iob_func()[1]) #define stderr (&__iob_func()[2]) #define _STDSTREAM_DEFINED #endif
�@