Time of Update: 2018-12-04
最好先看問題,自己試著回答一下然後再看答案,看你能答對幾道?1.這樣的初始化有什麼問題?char *p = malloc(10); 編譯器提示“非法初始式” 云云。答:這個聲明是靜態或非局部變數嗎?函數調用只能出現在自動變數(即局部非靜態變數) 的初始式中。因為靜態變數的地址必須在編譯的過程中就確定下來而malloc()申請的記憶體位址是在運行時確定的。2. *p++ 自增p 還是p 所指向的變數?答:尾碼++ 和-- 操作符本質上比首碼一目操作的優先順序高, 因此*p++ 和*(p++)
Time of Update: 2018-12-04
以前在玩Windows 98的時候,幾台電腦連起來,需要測試網路連接是否正常,經常用的一個命令就是Ping.exe.感覺相當實用。 現在 .net為我們提供了強大的功能來調用外部工具,並通過重新導向輸入、輸出擷取執行結果,下面就用一個例子來說明調用Ping.exe命令實現網路的檢測,希望對。net初學者有所協助。 首先,我們用使用Process類,來建立獨立的進程,匯入System.Diagnostics, using
Time of Update: 2018-12-04
Turbo C 2.0 設定詳解 對 於初學程式設計的人來說Turbo C 2.0無疑是最簡單最理想的入門語言環境之一,但也常由於環境變數設定的不正確導致程式無法編譯運行,嚴重打擊了初學者來之不易的自信心。為了迅速解決此 類問題,使大家能把精力集中到程式設計上來,我們特地編寫本文以協助有心涉足編程領域的初學者。 1.準備TC2.0 我們為你提供Turbo C2.0的下載,下載位置為: Turbo C 2.0
Time of Update: 2018-12-04
實驗程式是用vc6編譯,一定注意副檔名為c,不是cpp,下載處:http://download.csdn.net/detail/dijkstar/4036271實驗程式如下:#include <stdio.h>#include "include/atom.h"#pragma comment(lib, "libcii.lib")void main(){//注意:C語言一定要將這些變數聲明放在函數的頭部char *str = NULL;char *str1 = NULL;char
Time of Update: 2018-12-04
一,簡介 conio是Console Input/Output(控制台輸入輸出)的簡寫,其中定義了通過控制台進行資料輸入和資料輸出的函數,主要是一些使用者通過按鍵盤產生的對應操作,比如getch()函數等等。 大部分DOS,Windows 3.x,Phar Lap,DOSX,OS/2 or Win32平台上的C編譯器提供此檔案,UNIX 和Linux平台的c編譯器通常不包含此標頭檔。二,在ubuntu 環境下安裝測試並使用conio 【說明】這個版本的庫
Time of Update: 2018-12-04
數組能夠按照一定規律把相關資料群組織起來,通過索引或下標快速管理資料。此外,C#中提供了ArrayList和HashTable兩個類,分別為集合和雜湊表,也可以儲存多個資料。 一、一維數組1.聲明type[] arrayName;例如:int[] intArr; 2. 初始化int[] arr = new int[5];int[0] = 1;int[1] = 2; 聲明時初始化:int[] arr = new
Time of Update: 2018-12-04
表單是程式與使用者互動的視覺化介面,表單也是對象,表單類定義了產生表單的模版,執行個體化一個表單類就產生了一個表單。.NET架構類庫的System.Windows.Forms命名空間中定義的Form類是所有表單類的基類。1、常用屬性屬性:表徵圖、標題、位置、背景等可在表單內容面板設定,也可以代碼實現。(1)Name屬性:用來擷取或設定表單的名稱,在應用程式中可通過Name屬性來引用表單。(2)WindowState屬性:用來擷取或設定表單的視窗狀態。取值有三種:Normal(表單正常顯示)、Mi
Time of Update: 2018-12-04
1. 定義每一個函數都佔用一段記憶體單元,它們有一個起始地址,指向函數入口地址的指標稱為函數指標。2. 文法指向函數的指標變數的一般定義形式為:資料類型 (*指標變數名)(參數表);3. 說明1) 函數指標的定義形式中的資料類型是指函數的傳回值的類型。2) 區分下面兩個語句:int (*p)(int a, int b); //p是一個指向函數的指標變數,所指函數的傳回值類型為整型int *p(int a, int b); //p是函數名,此函數的傳回值類型為整型指標3)
Time of Update: 2018-12-04
“Lambda 運算式”是一個匿名函數,它可以包含運算式和語句,並且可用於建立委託或運算式分類樹類型。所有 Lambda 運算式都使用 Lambda 運算子,該運算子讀為“goes to”。該 Lambda 運算子的左邊是輸入參數(如果有),右邊包含運算式或語句塊。Lambda 運算式 x => x * x 讀作“x goes to x times x”。可以將此運算式分配給委託類型,如下所示:delegate int del(int i);del myDelegate = x =>
Time of Update: 2018-12-04
API與C#資料結構類型對應關係表 API與C#的資料類型對應關係表
Time of Update: 2018-12-04
一、常見字串1. 寫出在母串中尋找子串出現次數的代碼。int count(char* str,char* substr){char* str1;char* str2;int num = 0;while(*str!='\0'){str1 = str;str2 = s;while(*str2 == *str1&&(*str2!='\0')&&(*str1!='0')){str2++;str1++;}if(*str2 ==
Time of Update: 2018-12-04
Dev-C++下關於幾種int類型格式符的實驗kingwei 2005.3.10實驗環境: Dev-C++ 4.9.6.0 (gcc/mingw32), 使用-Wall編譯選項#include <stdio.h>int main(){ int v_int; signed int v_signed_int; unsigned int v_unsigned_int; signed short int v_signed_short_int; unsigned
Time of Update: 2018-12-04
今天,我們要用C++來寫一個猜字母的遊戲。不要擔心,做起來並不是那麼難的。首先,我們必須瞭解一下遊戲規則。 一:玩家每次只能猜一個字母; 二:玩家只能猜錯有限次,否則遊戲失敗; 三:猜錯的字母將被記錄下來; 四:每次猜測後,遊戲應顯示出當前猜出的殘缺單詞,以及當前猜錯的所有字母,和剩下的猜錯的機會; 五:假設玩家猜的字母在單詞中,單詞中所有的該字母將被視為已猜出,例如:如果原單詞是apple,我們猜出了p,則程式應顯示當前猜出的殘缺單詞為-pp--。 六:不得多次猜測同一個字母,因為
Time of Update: 2018-12-04
一、什麼是對齊,以及為什麼要對齊:1. 現代電腦中記憶體空間都是按照byte劃分的,從理論上講似乎對任何類型的變數的訪問可以從任何地址開始,但實際情況是在訪問特定變數的時候經常在特定的記憶體位址訪問,這就需要各類型資料按照一定的規則在空間上排列,而不是順序的一個接一個的排放,這就是對齊。2. 對齊的作用和原因:各個硬體平台對儲存空間的處理上有很大的不同。一些平台對某些特定類型的資料只能從某些特定地址開始存取。其他平台可能沒有這種情況, 但是最常見的是如果不按照適合其平台的要求對資料存放進行對齊,
Time of Update: 2018-12-04
上半年學了C++.平時我把大部分時間都用在了它上面。除了C++大學教程那本書外我還看了C++ primer。三個月的時間我把它們都看完了。期間做了大量的筆記,每遇到一個疑問我都會在書上標示出來,註明日期。等以後明白了再來回答。自我感覺基礎知識還是掌握的挺好的。基本上沒有什麼知識點遺漏。但是與我付出的時間精力相比我想收穫還是有一定差距的。這引發了我一個思考:對於初學者,如何自學一門新的語言,才能保證花最少的時間獲得最大的效果? C++大學教程這本書很不錯,介紹的很詳細,
Time of Update: 2018-12-04
今天要用winform做一個網頁瀏覽器,要是只開啟一個視窗,代碼非常簡單,要是像開啟百度,163這些的,都不用寫代碼,直接在Url中設定就行。可是開啟視窗後點擊裡面的連結,就會跳轉到IE中開啟,覺得很不友好。參考了一下網上的代碼,改了下自己的,基本實現了在內部開啟。代碼如下: private void webBrowser1_NewWindow(object sender, CancelEventArgs e) {
Time of Update: 2018-12-04
1 在C語言中使用宏可以提高程式效率,但宏容易出錯在宏定義中,最好給變數打上括弧,否則容易出錯.宏和普通函數是有區別的,普通函數是值傳遞或者地址傳遞,但宏是簡單地拷貝,特別參數是a++這種容易使a++多次執行2 在宏裡,沒法表示類的作用範圍.所以類中不能使用宏.轉而使用內嵌函式在類的聲明中直接寫上函數定義的預設是inline函數內嵌函式和普通函數差不多,會受到編譯器的檢查參數列表和傳回值.
Time of Update: 2018-12-04
串連到SAMPLE資料庫,查詢LASTNAME為JOHNSON的FIRSTNAME資訊。#include <stdio.h>#include <stdlib.h>#include <string.h>#include "util.h"#include <sqlca.h>``EXEC SQL INCLUDE SQLCA; main(){EXEC SQL BEGIN DECLARE SECTION; char firstname[13];char
Time of Update: 2018-12-04
=========================ConTextMenuStrip右鍵菜單=========================右鍵菜單的東西無需多說,有一個比較實用的技巧是根據不同的情況來決定快顯功能表的內容.比如在列表中選中了一項,則顯示添加,刪除.沒選中,則只顯示添加.contextMenuStrip1.Items["按鈕名"].Visible,通過此屬性來設定隱藏或者顯示 =========================SaveFileDialog/OpenFileDial
Time of Update: 2018-12-04
比如說建了一個新表,需要向裡面插入資料,資料量小還好,如果需要1000條呢,那就算用Ctrl+C,Ctrl+V也是很費勁的.大家都知道程式員是會偷懶的,也是偉大的,呵呵,我們可以用程式批量產生SQL語句,寫到一個文字檔中,開啟文字檔,Ctrl+A,Ctrl+C,最後Ctrl+V...你懂的...(其實可以用程式直接運行就插入到資料庫表中,但這裡為了示範執行過程,我就用Ctrl+...)先來理清下我們的思路吧:1,我們要先看下我們的需求,需要些什麼欄位.2,我們怎麼去找到需要的這些欄位.3,怎麼