⑴ c語言編程題目
vector有個sort函數,直接調用很方便,練習練習:
#include "stdafx.h"
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
vector<char>b;
char c;
while(cin.get(c))
{
if (c == '\n')
break;
b.push_back(c);
}
sort(b.begin(), b.end());
for (int i = 0;i < b.size();i++)
cout << b[i];
cout << endl;
system("pause");
return 0;
}
⑵ 問一個c語言問題 (1)sendDlgItmMessage的用法 括弧里有五個參數 第一個第二個我
LONG SendDlgItemMessage(
HWND hDlg, // handle of dialog box
int nIDDlgItem, // identifier of control
UINT Msg, // message to send
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
);
hDlg:指定含有控制項的對話框句柄。
nIDDigItem:指定接收消息的控制項的標識符。
Msg:指定將被發送的消息。
wParam:指定消息特定的其他信息。
lParam:指定消息特定的其他信息。
你可以這么理解。第三個是身份證號碼,第四個第五個是性別之類的附加消息。
第三個是消息。可以是windows原有定義的消息,也可以是自定義的消息(這種情況下,自己需要在窗口的消息循環中處理此消息)。
第四個和第五個,作為附加消息,一般windows內的消息是0,0.自定義的消息可以自由改變。
⑶ 請問什麼是Git
Git是現在主流的一種代碼託管技術。基本上大多數的公司都在使用Git進行協同開發。很多代碼託管平台也是通過Git來實現的。
Git可以對代碼進行版本控制以及分支管理等。它裡面主要包含遠程倉庫,克隆,本地倉庫,分支,提交,拉取等概念。其中遠程倉庫是指我們代碼存儲在伺服器的地方,並且是我們整個團隊中所有人都可以訪問的地方。
克隆則是指從遠程倉庫克隆到本地的過程。本地倉庫指的是我們開發人員從遠程倉庫克隆一份代碼之後,保存在我們本地的代碼,但是這個代碼只有克隆的代碼的開發人員可以看到。
分支分為主分支(master分支)和開發分支(develop分支),但我們開發的時候,基本不在master上面進行開發,而是我們自己從主分支或者開發分支中再分出來一條分支,然後我們就在這個分支上進行開發,裡面的每個分支都有自己的代碼。
提交是指在我們的代碼開發完成之後,需要將其修改並且說明修改的內容進行提交,但是此時的代碼只會提交到我們本地的倉庫,遠程倉庫此時還不會修改。
拉去的意思指在開發中,同一個項目可能是多人協作開發,那麼我們就需要將別人修改的代碼拉去並合並到自己的代碼中。
合並,顧名思義是指在我們自己的分支開發完成並且檢查沒有發現問題之後,就需要將我們的分支合並到主分支上面。
推送指由於之前的所有操作都是在我們本地進行的,遠程倉庫的代碼並沒有任何的改變,這就需要我們將本地的代碼推送到遠程的倉庫中,更新遠程倉庫代碼。
在開發中,我們可以合理地使用Git並且對它進行管理,當新版本遇到問題之後,我們就可能需要使用舊版本的代碼並將代碼進行回滾,以解決突發問題。
(3)c語言git擴展閱讀
游戲編程的簡單介紹
游戲編程指利用計算機編程語言,如C編程語言、C++、java等,編寫計算機、手機或游戲機上的游戲。 目前流行的游戲編程語言為C++編程語言,游戲編程介面為DirectX9.0、OpenGL和SDL(Simple DirectMedia Layer)等。現在手機上玩的游戲分為Android與IOS兩種平台,分別是用java和object-c(或swift)。當然時下也流行一些跨平台的編程引擎,例如cocos2d-x、unity 3D等。
⑷ 一名c語言的編程高手的有哪些路要走,分幾個階段
兩個階段,1,學習,2,實戰
⑸ 釋義C語言degit+=(2+(degit%2-1))c
c程序代碼內容如下:
# include <stdio.h>
main()
{
int a,b,c;
printf("請輸入兩個整數,中間以空格隔開:\n");
scanf("%d%d",&a,&b);
c=a+b;
printf("這兩個數的和是:a+b=%d\n",c);
}
然後按提示輸入「1 1」就會顯示:「a+b=2」
編程完成!
⑹ c語言編程
這個題目呢我分析了用模塊化設計方便,簡單易懂,需要我可以給你一份
⑺ 在哪裡可以找到C語言標准庫的實現源代碼
http://www.gnu.org/software/libc/
如果網頁嫌麻煩,可以先裝git,然後
git clone git://sourceware.org/git/glibc.git
cd glibc
git checkout --track -b glibc-2_11-branch origin/release/2.11/master
其實完全沒有必要全都看,無論你有沒有這個能力。因為由於歷史兼容等問題,C標准庫的代碼並不是很適合學習,裡面有些很雜亂。不過看過肯定比沒看好,畢竟都是牛人寫的。
望採納,謝謝
⑻ 哪位大神能用c語言 重寫opencv 的下面6個函數或者從源碼中整理出來,可以編譯,運行
去git上面看看源碼
//先說一下這個函數吧
//cvNamedWindow
CV_IMPLintcvNamedWindow(constchar*name,intflags){
CV_FUNCNAME("cvNamedWindow");
if(!name)CV_ERROR(CV_StsNullPtr,"NULLname");
HighguiBridge::getInstance().namedWindow(name);
returnCV_OK;
}
//而它又需要HighhuiBridge這個類,它有個單例工廠方法
HighguiBridge&HighguiBridge::getInstance(){
staticHighguiBridgeinstance;
returninstance;
}
//上面2個函數實際調用這2個成員函數
CvWindow*HighguiBridge::namedWindow(cv::Stringname){
CvWindow*window=HighguiBridge::getInstance().findWindowByName(name.c_str());
if(!window)window=createWindow(name);
returnwindow;
}
//創建窗口先是查找有沒有已有窗口
CvWindow*HighguiBridge::findWindowByName(cv::Stringname){
autosearch=windowsMap->find(name);
if(search!=windowsMap->end())returnsearch->second;
returnnullptr;
}
//如果沒有會用這個函數創建
CvWindow*HighguiBridge::createWindow(cv::Stringname){
CvWindow*window=newCvWindow(name);
windowsMap->insert(std::pair<cv::String,CvWindow*>(name,window));
returnwindow;
}
//創建窗口是CvWindow類
classCvWindow{
public:
CvWindow(cv::Stringname,intflag=CV_WINDOW_NORMAL);
~CvWindow();
/**@briefNOTE:prototype.
.
*/
voidcreateButton(cv::Stringname);
/**@.
.
*/
voidcreateSlider(cv::Stringname,int*val,intcount,CvTrackbarCallback2on_notify,void*userdata);
/**@briefUpdateswindowimage.
@.
Thefunctionupdateswindowimage.-doesnothing.
*/
voipdateImage(CvMat*arr);
/**@(slider).
@paramnameNameofthewindow.
(slider).
nullptr.
*/
CvTrackbar*findTrackbarByName(cv::Stringname);
Page^getPage();
private:
cv::Stringname;
//HoldsimagedatainCVformat
CvMat*imageData;
//
std::map<cv::String,CvTrackbar*>*sliderMap;
//Windowcontentsholder
Page^page;
//
Image^imageControl;
//Containerforsliders
Panel^sliderPanel;
//Containerforbuttons
//TODO:prototype,notavailableviaAPI
Panel^buttonPanel;
//.
//RequiredsinceimageData->
intimageWidth;
//t
staticconstPlatform::String^markupContent;
//DefaultSlidersize,
;
};
//CvWindwo構造函數為
CvWindow::CvWindow(cv::Stringname,intflags):name(name){
this->page=(Page^)Windows::UI::Xaml::Markup::XamlReader::Load(const_cast<Platform::String^>(markupContent));
this->sliderMap=newstd::map<cv::String,CvTrackbar*>();
sliderPanel=(Panel^)page->FindName("cvTrackbar");
imageControl=(Image^)page->FindName("cvImage");
buttonPanel=(Panel^)page->FindName("cvButton");
//.
//,afterthatwecan
//updateothercontrols
imageControl->Loaded+=refnewWindows::UI::Xaml::RoutedEventHandler(
[=](Platform::Object^sender,
Windows::UI::Xaml::RoutedEventArgs^e){
//
for(autoiter=sliderMap->begin();iter!=sliderMap->end();++iter){
iter->second->getSlider()->Width=imageControl->ActualWidth;
}
//
//TODO:implementwhenaddingbuttons
});
}
⑼ 用C語言幫忙編寫一下程序。
#include <stdio.h>#include <string.h>
void reverse(char * str);//字元串逆序函數
void sort(int arr[], int n);//整型數組排序
void display(int arr[], int n);//顯示數組元素
void main()
{
char* str = "light";
reverse(str);
int arr[] = {1,20,10,4,12,8};
display(arr, 6);
sort(arr, 6);
display(arr, 6);
}
void reverse(char *str)
{
int length = strlen(str);//取得字元串長度
for (int i = length-1; i >= 0; i--)
{
printf("%c", str[i]);
}
printf("\n");
}
void sort(int arr[], int n)//選擇排序演算法,最簡單
{
int i, j, min;
int temp;//交換的中間變數
for (i = 0; i < n; i++)//
{
min = i;//記錄每輪循環最小值的下標
for (j = i+1; j < n; j++)
{
if (arr[min] > arr[j])
{
min = j;
}
}
if (min != i)//如果這輪循環最小值下標改變了,則交換數組元素
{
temp = arr[min];
arr[min] = arr[i];
arr[i] = temp;
}
}
}
void display(int arr[], int n)
{
for (int i = 0; i < n; ++i)
{
printf("%d ", arr[i]);
}
printf("\n");
}
⑽ C語言中_是什麼意思有什麼用處
C語言中_是標識符中的合法字元之一。它通常用來隔離標識符中的各個單詞,例如room_1,也可以用來與另一同名變數進行區分,例如,int ab,_ab;