Time of Update: 2018-12-03
在寫一個動態庫的時候,一直提示 Error 4430 錯誤,開始也沒太注意,後來一檢查,發現是聲明時沒有定義返回資料類型的緣故。 error C4430 在 VS2005 中經常會出現,特別是剛從VS6.0中轉過來的新手,因為在VS6.0裡,無類型標識時,預設為int類型,而在VS2005對編譯器進行了改進,進行了更加嚴格的限制,開發人員必須顯式的指定資料類型。 解決方案可以用到如下任意一種:#pragma warning(disable:
Time of Update: 2018-12-03
C/C++ 編程基礎篇之淺析堆&棧(轉)在C++中,記憶體分成5個區,他們分別是堆、棧、自由儲存區、全域/靜態儲存區和常量儲存區。1、棧:就是那些由編譯器在需要的時候分配,在不需要的時候自動清楚的變數的儲存區。裡面的變數通常是局部變數,函數參數等。 2、堆:就是那些由new分配的記憶體塊,他們的釋放編譯器不去管,由我們的應用程式去控制,一般一個new就要對應一個delete。如果程式員沒有釋
Time of Update: 2018-12-03
1.如果在基於 Windows Win32 的程式(純C++無法使用),即可以使用 GetTickCount() 函數實現。 精確到毫秒(ms)級。DWORD dwStart = GetTickCount();// 程式.......DWORD dwEnd = GetTickCount();DWORD dwTimeUsed = dwEnd - dwStart; 2. 使用 time 結構體擷取時間,在純 C++
Time of Update: 2018-12-03
閒蕩了一個月,頭兒要求偶做個PXE的類比程式,首先第一步是要實現一個DHCP用戶端,這裡就牽涉到了一個讀取本機MAC,IP地址的問題,不想做文抄公,所以簡要說一下這裡主要是運用windows SDK中的函數GetAdapterInfo()來實現,該函數在標頭檔Iphlpapi.h中。然後就是主要的實現過程,由於偶用的環境是code::block10.5,這裡說下環境配置的基本步驟:依次進入Settings->Compiler and debugger->Linker
Time of Update: 2018-12-03
昨天學會了編程實現擷取本地網卡資訊,今天再接再礪學會了修改本機ip地址。其實原理很簡單就是用c++調用一下dos命令而已,不得不說,dos命令實在是太強大了,當然聽說還有種修改註冊表的方法,不過沒有實驗過,所以放上調用dos命令修改本地ip地址的代碼,編譯環境依舊是code::block 10.05。#include <iostream>#include <string>#include <cstdlib>#include
Time of Update: 2018-12-03
經過一段日子的學習,PXE模擬器的console版本已經完成,於是正在著手用MFC來進行介面美化。為了類比多台機器同時向一個TFTP伺服器請求資料,並下載檔案。為了保持各個程式間的相對獨立,就用多進程代替多線程來予以實現。在這個過程中就牽扯到了字串的連結,同時在資料包構建的過程中,這個知識點也一直出現:下面將通過兩個執行個體來說明字串連結的一種常用的方法: //構造形如:“command param1”的dos命令//例:c:>TFTPmanagement.exe 5 TCHAR
Time of Update: 2018-12-03
ubuntu下的c/c++環境搭建是比較簡單,因為有apt和新立得的協助.1.首先是配置gcc,在ubuntu安裝完成已經有gcc了(gcc是由GNU之父Stallman所開發的linux下的編譯器,全稱為GNU Compiler Collection, 目前可以編譯的語言套件括:C, C++, Objective-C, Fortran, Java, and
Time of Update: 2018-12-03
糾結了一天多的DHCP包發送問題得以解決,在修改了整個程式的設計模式後,將原來各種資料包分別發送,改為了一個專門發送資料包的類和另一個專門處理資料包的類,然後就感覺程式修改起來尤其容易~~言歸正傳,今天的主要問題是使用socket進行廣播,但是報出錯誤碼:10013。通過查詢知道這個問題是有趣許可權不夠的原因引起的,但是,接觸socket到現在,我還從來沒有聽說過socket中還有什麼許可權問題,囧||。問了同事大哥後,才知道原來是一個叫做setsockopt的函數作祟。修改之後,空的dhcp資
Time of Update: 2018-12-03
經過一天多的研究,簡易實現了TFTP用戶端,在項目的進程中遇到了一些問題,大部分的問題是由於對C++類型轉換等基礎概念還是有點模糊,收到根深蒂固C語言的影響,使得我對C++的繼承,類等概念的理解還是有些紙上談兵,在實際運用中有些捉衿見肘。現在簡要分析一下實現TFTP用戶端的過程。通過TFTP協議我們可以得知TFTP用戶端主要有5種類型的資料報:讀/寫請求報文,響應報文,資料報文,錯誤判文。根據協議我們可以定義5種報文的結構體分別為://TFTP包頭struct TFTP_Head{
Time of Update: 2018-12-03
#include <stdio.h>#include <locale>#include <codecvt>const std::string ws2s( const std::wstring& src ){std::locale sys_locale("");const wchar_t* data_from = src.c_str();const wchar_t* data_from_end = src.c_str() +
Time of Update: 2018-12-03
解析__cdecl,__fastcall, __stdcall 的不同:在函數調用過程中,會使用堆棧,這三個表示不同的堆棧調用方式和釋放方式。 比如說__cdecl,它是標準的c方法的堆棧調用方式,就是在函數調用時的參數壓入堆棧是與函數的聲明順序相反的,其它兩個可以看MSDN,不過這個對我們編程沒有太大的作用 --------------------------------------------------------------- 呼叫慣例 呼叫慣例(Calling
Time of Update: 2018-12-03
聲音是人類傳遞資訊的重要途徑,如果應用程式中包含聲音資訊,就可以大大增強它的親合力;另外在科研開發過程中,聲音訊號的處理也是一個很重要的科學研究領域。Visual C++作為一個強大的開發工具,當然是聲音處理的首選工具,但是在當前Visual
Time of Update: 2018-12-03
0.00001 pow(10,-5) 1e-5/////////////////////////////////////////#include <stdio.h>#include <math.h> void main() {double a,x1,x2; printf("輸入a的值:"); scanf("%lf",&a); x1=a/2; x2=(x1+a/x1)/2;for( ;fabs(x2-x1)>=0.00001; ){ x1=x
Time of Update: 2018-12-03
A. extension c++: 0.259s lua:6.136s python: 15.874s c++比 lua -->23.6倍 lua比python -->2.58倍B.without extension c++:0.098s 林卓毅 protoc-gen-lua lua:1.788s 雲風 pbc lua: message mode 0.585s, pack mode0.187s python: 4.645s c+
Time of Update: 2018-12-03
轉自:http://www.dingge.com/main/article.asp?id=10今天整理了一些#define的用法,與大家共用!1.簡單的define定義#define MAXTIME 1000
Time of Update: 2018-12-03
在論壇中,經常有人會問到這個問題,所以今天整理了幾種方法用來改變視窗標題,希望對這些朋友有所協助。 一·單文檔介面(SDI)類型視窗標題的改變 首先,我們來看Windows SDI類型視窗標題列的結構形式。結合具體例子說明:用VC的AppWizard建立一個名為“SDITitle”的單文件類型的工程,建立完工程後,編譯運行該工程,程式主視窗標題形式如下: 文檔標題 主視窗標題 1·文檔標題的改變
Time of Update: 2018-12-03
1.BOOST_PYTHON_MODULE(myClassModule){ class_<myClass>("myClass") .def("setID", &myClass::setID) .def("getID", &myClass::getID) ; def("printTest", &printTest);} 2.Py_Initialize();// PyRun_SimpleString("import sys"); //
Time of Update: 2018-12-03
求只能被1和自己整除的正整數。using System;using System.Collections.Generic;using System.Text;namespace DataStructure{ public class Prime { private static List _prime=new ArrayList(); /// <summary> /// check prime ///
Time of Update: 2018-12-03
環境:VC++6.01.首先利用uuidgen.exe /i /Rpc.idl命令產生一個Rpc.idl檔案(檔案名稱字自己取,但必須是.idl類型)。組建檔案內容格式如下[uuid(abb12775-f053-4c62-95c2-4d9bc7fdbfef),version(1.0)]interface INTERFACENAME{}2.在 interface INTERFACENAME
Time of Update: 2018-12-03
法1.for(int nIndex=0;nIndex<m_List.GetHeaderCtrl()->GetItemCount();nIndex++) m_List.DeleteColumn(0); 法2.Example // The pointer to my list view control. extern CListCtrl* pmyListCtrl; int nColumnCount