0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【C語言經(jīng)典面試題】函數(shù)指針數(shù)組的定義是怎么樣的?

嵌入式物聯(lián)網(wǎng)開發(fā) ? 來源:嵌入式物聯(lián)網(wǎng)開發(fā) ? 作者:嵌入式物聯(lián)網(wǎng)開發(fā) ? 2022-10-05 16:35 ? 次閱讀

C語言經(jīng)典面試題】函數(shù)指針數(shù)組的定義是怎么樣的?

經(jīng)典面試題,有必要了解下!

1 問題描述

C語言的函數(shù)指針定義有一定的規(guī)則,那么函數(shù)指針數(shù)組呢?它應(yīng)該如何定義的呢?

2 示例代碼

為此寫了一段測試代碼:

?
?
#include 
#include 
?
int test_func1(int a)
{
return a + 1;
}
?
int test_func2(int a)
{
return a - 1;
}
?
typedef int (*func)(int a);
?
int main(int argc, const char *argv[])
{
func test_func_array[] = {test_func1, test_func2};
?
printf("test_func1: %d\\n", test_func_array[0](1));
printf("test_func2: %d\\n", test_func_array[1](1));
?
return 0;
}

示例代碼很簡單,

首先定義了兩個函數(shù):test_func1和test_func2,

*然后定義了一個函數(shù)指針,typedef int (func)(int a);

隨后定義了一個函數(shù)指針數(shù)組,

最后通過函數(shù)指針數(shù)組依次調(diào)用test_func1和test_func2.

測試結(jié)果如下:

image-20220930223608949

3 總結(jié)

  • 函數(shù)指針的定義,可以借助typedef來實(shí)現(xiàn);
  • 當(dāng)使用typedef定義完函數(shù)指針后,它就相當(dāng)于一個新數(shù)據(jù)類型,直接使用它來定義一個數(shù)組即可。

4 更多分享

[架構(gòu)師李肯]

架構(gòu)師李肯全網(wǎng)同名 ),一個專注于嵌入式IoT領(lǐng)域的架構(gòu)師。有著近10年的嵌入式一線開發(fā)經(jīng)驗(yàn),深耕IoT領(lǐng)域多年,熟知IoT領(lǐng)域的業(yè)務(wù)發(fā)展,深度掌握IoT領(lǐng)域的相關(guān)技術(shù)棧,包括但不限于主流RTOS內(nèi)核的實(shí)現(xiàn)及其移植、硬件驅(qū)動移植開發(fā)、網(wǎng)絡(luò)通訊協(xié)議開發(fā)、編譯構(gòu)建原理及其實(shí)現(xiàn)、底層匯編及編譯原理、編譯優(yōu)化及代碼重構(gòu)、主流IoT云平臺的對接、嵌入式IoT系統(tǒng)的架構(gòu)設(shè)計(jì)等等。擁有多項(xiàng)IoT領(lǐng)域的發(fā)明專利,熱衷于技術(shù)分享,有多年撰寫技術(shù)博客的經(jīng)驗(yàn)積累,堅(jiān)信【知識改變命運(yùn),技術(shù)改變世界】!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7581

    瀏覽量

    135541
  • 嵌入式技術(shù)
    +關(guān)注

    關(guān)注

    10

    文章

    358

    瀏覽量

    35379
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4256

    瀏覽量

    62223
  • 指針
    +關(guān)注

    關(guān)注

    1

    文章

    475

    瀏覽量

    70477
  • 數(shù)組
    +關(guān)注

    關(guān)注

    1

    文章

    411

    瀏覽量

    25857
收藏 人收藏

    評論

    相關(guān)推薦

    C語言指針詳細(xì)解析

    。 二維數(shù)組 二維數(shù)組其實(shí)可以看成是一個矩陣,zai C語言中,定義一個數(shù)組num[3][4],
    發(fā)表于 09-14 10:03

    面試???1:函數(shù)指針指針函數(shù)數(shù)組指針指針數(shù)組

    在嵌入式開發(fā)領(lǐng)域,函數(shù)指針指針函數(shù)、數(shù)組指針指針
    的頭像 發(fā)表于 08-10 08:11 ?505次閱讀
    <b class='flag-5'>面試</b>???1:<b class='flag-5'>函數(shù)</b><b class='flag-5'>指針</b>與<b class='flag-5'>指針</b><b class='flag-5'>函數(shù)</b>、<b class='flag-5'>數(shù)組</b><b class='flag-5'>指針</b>與<b class='flag-5'>指針</b><b class='flag-5'>數(shù)組</b>

    面試中的高頻問題:指針函數(shù)函數(shù)指針,你能完美應(yīng)對嗎?

    一直覺得C語言較其他語言最偉大的地方就是C語言中的指針,有些人認(rèn)為
    的頭像 發(fā)表于 06-22 08:11 ?1296次閱讀
    <b class='flag-5'>面試</b>中的高頻問題:<b class='flag-5'>指針</b><b class='flag-5'>函數(shù)</b>與<b class='flag-5'>函數(shù)</b><b class='flag-5'>指針</b>,你能完美應(yīng)對嗎?

    C語言函數(shù)指針六大應(yīng)用場景詳解

    函數(shù)指針是一種非常強(qiáng)大的編程工具,它可以讓我們以更加靈活的方式編寫程序。在本文中,我們將介紹 6 個函數(shù)指針的高級應(yīng)用場景,并貼出相應(yīng)的代碼案例和解釋。
    的頭像 發(fā)表于 04-23 18:19 ?790次閱讀

    函數(shù)指針與回調(diào)函數(shù)的應(yīng)用實(shí)例

    通常我們說的指針變量是指向一個整型、字符型或數(shù)組等變量,而函數(shù)指針是指向函數(shù)。 函數(shù)
    的頭像 發(fā)表于 03-07 11:13 ?340次閱讀
    <b class='flag-5'>函數(shù)</b><b class='flag-5'>指針</b>與回調(diào)<b class='flag-5'>函數(shù)</b>的應(yīng)用實(shí)例

    C語言指針用法

    C語言編程中善用指針可以簡化一些任務(wù)的處理,而對于一些任務(wù)(比如動態(tài)內(nèi)存分配),必須要有指針才行的。也就是說精通C
    發(fā)表于 03-05 14:22 ?277次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>的<b class='flag-5'>指針</b>用法

    函數(shù)指針指針函數(shù)是不是一個東西?

    函數(shù)指針的本質(zhì)是指針,就跟整型指針、字符指針,函數(shù)
    的頭像 發(fā)表于 01-03 16:35 ?468次閱讀
    <b class='flag-5'>函數(shù)</b><b class='flag-5'>指針</b>和<b class='flag-5'>指針</b><b class='flag-5'>函數(shù)</b>是不是一個東西?

    如何給C語言中的函數(shù)定義兩個不同的名字?

    最近有位哥問我,如何給C語言中的函數(shù)定義兩個不同的名字?就是這兩個名字都是指向同一個函數(shù),同一個地址,而且兩個名字都可以當(dāng)做
    的頭像 發(fā)表于 12-19 16:21 ?635次閱讀

    數(shù)組指針不相同嗎?數(shù)組指針有哪些區(qū)別

    數(shù)組就是指針,指針就是數(shù)組,這樣的言論在評論區(qū)看到不下于10次。
    的頭像 發(fā)表于 12-13 16:34 ?1148次閱讀
    <b class='flag-5'>數(shù)組</b>和<b class='flag-5'>指針</b>不相同嗎?<b class='flag-5'>數(shù)組</b>和<b class='flag-5'>指針</b>有哪些區(qū)別

    數(shù)組指針不能混用的情況

    數(shù)組指針不能混用的情況? 數(shù)組指針C/C++ 中非常常見的特性和概念。然而,在某些情況下
    的頭像 發(fā)表于 12-07 13:46 ?528次閱讀

    c語言中多維數(shù)組可以嵌套定義

    C語言中多維數(shù)組可以嵌套定義,這使得我們可以在一個數(shù)組中存儲另一個數(shù)組。通過這種方式,我們可以創(chuàng)
    的頭像 發(fā)表于 11-24 10:18 ?919次閱讀

    c語言數(shù)組怎么定義

    C語言中,數(shù)組是一種用來存儲相同類型元素的數(shù)據(jù)結(jié)構(gòu)。它可以存儲多個元素,并通過一個共同的名稱來引用這些元素。數(shù)組是一種很重要的數(shù)據(jù)結(jié)構(gòu),可以用于解決很多實(shí)際的問題。 在
    的頭像 發(fā)表于 11-24 10:11 ?2550次閱讀

    C語言如何創(chuàng)建數(shù)組

    C語言是一種非常強(qiáng)大和靈活的編程語言,它提供了若干數(shù)據(jù)類型來存儲和操作數(shù)據(jù)。其中之一就是數(shù)組,它可以用來存儲一系列具有相同數(shù)據(jù)類型的元素。本文將詳細(xì)介紹如何在
    的頭像 發(fā)表于 11-24 10:08 ?1520次閱讀

    c語言字符串定義

    字符串的定義、初始化、操作和常見問題。 字符串的定義和初始化 在C語言中,字符串被定義為一個字符數(shù)組
    的頭像 發(fā)表于 11-24 10:02 ?1653次閱讀

    硬件工程師經(jīng)典面試題詳解

    硬件工程師經(jīng)典面試題詳解
    的頭像 發(fā)表于 11-20 15:08 ?1286次閱讀
    硬件工程師<b class='flag-5'>經(jīng)典</b><b class='flag-5'>面試題</b>詳解