Tag: C#的

进度条与HttpClient

我有一个文件下载function: HttpClientHandler aHandler = new HttpClientHandler(); aHandler.ClientCertificateOptions = ClientCertificateOption.Automatic; HttpClient aClient = new HttpClient(aHandler); aClient.DefaultRequestHeaders.ExpectContinue = false; HttpResponseMessage response = await aClient.GetAsync(url); InMemoryRandomAccessStream randomAccessStream = new InMemoryRandomAccessStream(); // To save downloaded image to local storage var imageFile = await ApplicationData.Current.LocalFolder.CreateFileAsync( filename, CreationCollisionOption.ReplaceExisting); var fs = await imageFile.OpenAsync(FileAccessMode.ReadWrite); DataWriter writer = new DataWriter(fs.GetOutputStreamAt(0)); writer.WriteBytes(await response.Content.ReadAsByteArrayAsync()); await […]

垂直自动调整文本框控件的大小

在一个C#的forms,我有一个面板锚定所有的侧面,里面,一个文本框,锚定顶部/左/右。 当文本被加载到文本框中时,我希望它自动垂直自动展开,这样我就不需要滚动文本框(最多滚动面板,如果有更多文本不适合面板)。 有没有办法用文本框做到这一点? (我没有限制使用这个控件,所以如果有另一个适合描述的控件,可以随意提及它)

如何find正则expression式组的多个事件?

为什么下面的代码会导致: 有1场比赛的''' 并不是: 有3场比赛的''' using System; using System.Text.RegularExpressions; namespace TestRegex82723223 { class Program { static void Main(string[] args) { string text = "C# is the best language there is in the world."; string search = "the"; Match match = Regex.Match(text, search); Console.WriteLine("there was {0} matches for '{1}'", match.Groups.Count, match.Value); Console.ReadLine(); } } }

写入stdin并从stdout读取(UNIX / LINUX / C编程)

我正在做一个任务,一个程序把一个文件描述符作为参数(一般来自父调用exec调用),并从一个文件读取并写入一个文件描述符,在我的testing中,我意识到程序可以工作如果我使用0,1或2作为文件描述符,则不会发出错误。 这对我来说是有意义的,除了我可以写入标准input并显示在屏幕上。 有这个解释吗? 我一直认为stdin / stdout有一些保护,你肯定不能从标准输出到标准input或者fgets。 #include <stdlib.h> #include <stdio.h> #include <unistd.h> int main() { char message[20]; read(STDOUT_FILENO, message, 20); write(STDIN_FILENO, message, 20); return 0; }

从C语言的文件中删除一行

我想删除文件中的某些行,并根据行的某些部分是否与指定的string匹配,在同一个文件中插入某些行。 有没有办法做到这一点,而不使用临时文件复制内容等等?

GCC如何实现可变长度数组?

GCC如何实现可变长度数组(VLA)? 这样的数组本质上是指向dynamic分配的存储,如由alloca返回? 我能想到的另一种方法就是将这样一个数组作为函数中的最后一个variables进行分配,以便在编译期间知道variables的偏移量。 然而,第二个VLA的偏移在编译期间再次不被知道。

C中函数指针的recursion声明

我想声明一个函数,返回一个指向相同types的函数的指针。 我想用它来实现像下面这样的状态机: typedef event_handler_t (*event_handler_t)(event_t*); // compilation error event_handler_t state2(event_t* e); event_handler_t state1(event_t* e) { switch(e->type) { //… case SOME_EVENT: return state2; //… } } event_handler_t state2(event_t* e) { switch(e->type) { //… case OTHER_EVENT: return state1; //… } } //… event_handler_t event_handler; //… event_handler(&e); //… 我设法解决使用结构的compliation错误,如下所示: typedef struct event_handler { struct event_handler (*func)(event_t *); } […]

提取C / C ++函数原型

我想这样做: extract_prototypes file1.c file2.cpp file3.c 并有任何脚本/程序打印给定的C / C ++文件中定义的所有function函数原型的一个不错的列表。 它必须很好地处理多行的声明。 有没有可以做这个工作的程序? 越简单越好。 编辑:在试图编译两个C程序后,使用{perl,python,ruby}的东西的奖励积分。

存储无效指针是否自动未定义行为?

显然,解引用无效指针会导致未定义的行为。 但是如何简单地存储一个无效的内存地址在指针variables? 考虑下面的代码: const char* str = "abcdef"; const char* begin = str; if (begin – 1 < str) { /* … do something … */ } expression式begin – 1评估为无效的内存地址。 请注意,我们实际上并没有取消引用这个地址 – 我们只是在指针运算中使用它来testing它是否有效。 尽pipe如此,我们仍然需要将一个无效的内存地址加载到一个寄存器中。 那么,这是不确定的行为? 我从来没有想过,因为很多指针算术似乎都依赖于这种事情,而指针实际上只不过是一个整数。 但是最近我听说,即使将一个无效指针加载到寄存器中的行为也是未定义的行为,因为某些体系结构会自动抛出总线错误,或者如果这样做。 任何人都可以指向我的C或C ++标准的相关部分来解决这个问题吗?

通用C#代码和Plus运算符

我正在写一个类,对C#中的每个基本数字types进行基本相同的计算。 虽然实际计算更为复杂,但将其视为计算多个值的平均值的一种方法 class Calc { public int Count { get; private set; } public int Total { get; private set; } public int Average { get { return Count / Total; } } public int AddDataPoint(int data) { Total += data; Count++; } } 现在要支持double,float和定义operator +和operator /的其他类的相同操作,我的第一个想法就是简单地使用generics: class Calc<T> { public T Count { get; […]